working with vbscript adodb connection objects
Introduction aux objets de connexion VBScript: Tutoriel # 12
Dans mon précédent Tutoriel VBS , nous avons discuté sur « Objets Excel »Dans le VBScript. Dans ce tutoriel, je vais expliquer Objets de connexion qui sont utilisés dans le VBScript.
VBScript prend en charge différents types d'objets et les objets de connexion en font partie. Les objets de connexion sont principalement appelés objets qui permettent aux codeurs de travailler et de gérer les connexions de base de données.
Ce didacticiel vous guidera à travers tous les aspects des objets de connexion dans VBScript, y compris ses différentes propriétés et méthodes, ainsi que des exemples simples pour votre compréhension.
Ce que vous apprendrez:
- Aperçu
- Propriétés et méthodes des objets de connexion
- Établissement d'une connexion à la base de données à l'aide de l'objet de connexion ADODB
- Exportation de données vers un fichier Excel à l'aide de l'objet de connexion ADODB
- Exportation de données vers un fichier texte à l'aide de l'objet de connexion ADODB
- Conclusion
- lecture recommandée
Aperçu
Toutes les bases de données telles que SQL Server, PL / SQL, etc. doivent être installée sur votre ordinateur pour travailler avec les connexions de base de données.
En tant que tel, il n'y a pas de mécanisme simple pour se connecter à la base de données dans le QTP. Mais avec l'aide de Objets ADODB , vous pouvez interagir avec la base de données et utiliser les requêtes SQL pour récupérer les données de la base de données.
ADO signifie Objets de données ActiveX et cela fournit le mécanisme pour agir en tant qu'intermédiaire entre le QTP et la base de données.
Ce sujet a constitué la base du travail avec la base de données et il vous serait très utile à long terme si vous en avez une meilleure compréhension.
Je vais essayer de vous faire comprendre tous les différents codes, propriétés et méthodes qui doivent être écrits pour fonctionner facilement avec la base de données afin que vous puissiez facilement écrire un morceau de code par vous-même.
À présent, commençons par les propriétés et méthodes qui sont utiles pour établir une connexion avec la base de données.
Propriétés et méthodes des objets de connexion
Il existe différentes propriétés et méthodes qui prennent en charge l'extraction des données de la base de données.
le principal objectif des tests d'acceptation est
La liste des propriétés de l'objet de connexion ADODB est la suivante:
# 1) Chaîne de connexion :
C'est une propriété très utile qui est utilisée pour créer une connexion à la base de données et qui inclut des détails de connexion comme les détails du Pilote, nom du serveur de base de données, nom d'utilisateur et mot de passe .
# 2) Délai de connexion :
Ceci est utilisé pour définir le temps requis pour attendre pour qu'une connexion soit établie.
# 3) Fournisseur :
Cette propriété fournit tous les détails relatifs au fournisseur, c'est-à-dire le nom du Fournisseur de connexion .
# 4) État :
Cela fournit les informations sur l'état de la connexion, c'est-à-dire si la connexion est Allumé ou éteint .
Ceux mentionnés ci-dessus sont les propriétés d'un objet de connexion. Cependant, il y a un Objet RecordSet aussi (allons-nous discuter dans un moment).
La liste de ses propriétés est la suivante:
#1) BOF:
Cette propriété permet de connaître la position de l'enregistrement courant. Si la position de l'enregistrement actuel est présente avant le premier enregistrement du jeu d'enregistrements, cette propriété retournera true.
# 2) EOF:
C'est juste l'inverse de celui ci-dessus. Si la position de l'enregistrement actuel est présente après le dernier enregistrement du jeu d'enregistrements, cette propriété retournera true.
Noter: Les valeurs de EOF et BOF seront fausses lorsqu'il n'y a aucun enregistrement dans le jeu d'enregistrements. Ceci est utile en cas de validation d'enregistrements vides, c'est-à-dire lorsqu'il n'y a pas d'enregistrements dans le jeu d'enregistrements.
# 3) MaxCount:
Ceci est utile pour définir le maximum valeurs des lignes / enregistrements qui peuvent être renvoyées à partir de la base de données, c'est-à-dire si vous souhaitez extraire un maximum de 20 lignes à la fois à partir des données, vous pouvez définir cette propriété sur 20.
Jetons maintenant un œil aux méthodes:
partitionnement d'équivalence et analyse des valeurs limites
La liste des méthodes d'objet de connexion ADODB et d'objet RecordSet est la suivante:
- Ouvert: Cette méthode est utilisée pour ouvrir un objet de connexion à une base de données / un objet de jeu d'enregistrements.
- Exécuter: Ceci est utilisé pour exécuter une requête SQL fournie.
- Fermer: Ceci est utilisé pour fermer une connexion à une base de données / un jeu d'enregistrements qui est ouvert.
- Annuler: Il s'agit d'une méthode de jeu d'enregistrements utilisée pour annuler l'exécution existante de la connexion à la base de données.
- cloner: Il s'agit d'une méthode de jeu d'enregistrements utilisée pour obtenir le clone de l'objet de jeu d'enregistrements existant.
- bouge toi: Il s'agit d'une méthode de jeu d'enregistrements qui est utilisée pour déplacer le pointeur à un emplacement spécifié dans un jeu d'enregistrements sur la base du nombre mentionné.
- compter: Il s'agit d'une méthode de jeu d'enregistrements et est utilisée pour obtenir le nombre total de champs présents dans le jeu d'enregistrements, c'est-à-dire le nombre total de colonnes dans une table.
- élément (i): Il s'agit d'une méthode de jeu d'enregistrements. Ceci est utilisé pour obtenir l'élément dont l'index est spécifié par le nombre total de champs présents dans un jeu d'enregistrements.
Voici les différentes propriétés et méthodes que vous utiliserez lors de la gestion des objets liés à la connexion.
Passons à la mise en œuvre pratique pour connaître le fonctionnement de ces objets.
Établissement d'une connexion à la base de données à l'aide de l'objet de connexion ADODB
Dans cette section, nous verrons les différentes étapes impliquées dans la création d'une connexion à une base de données à l'aide du mécanisme d'objet de connexion dans VBScript.
Voici le code pour créer une connexion:
Set obj = createobject ('ADODB.Connection') ‘ Création d'un objet de connexion ADODB
Set obj1 = createobject ('ADODB.RecordSet') ‘ Création d'un objet Recordset ADODB
Dim dbquery «Déclaration d’une variable de requête de base de données bquery
Dbquery = 'Sélectionnez acctno dans dbo.acct où name =' Harsh '' 'Créer une requête
obj.Open 'Provider = SQLQLEDB; Server =. SQLEXPRESS; UserId = test; Password = P @ 123; Database = AUTODB' «Ouverture d’une connexion
obj1.Open dbquery,obj 'Exécution de la requête à l’aide du jeu d’enregistrements
val1 = obj1.fields.item (0) 'Renvoie la valeur du champ
msgbox val1 «Affichage de la valeur du champ 0, c’est-à-dire colonne 1
obj.close «Fermeture de l’objet de connexion
obj1.close «Fermeture de l’objet de connexion
Set obj1 = Nothing ‘ Libération de l'objet Recordset
Set obj = Nothing ‘ Libération de l'objet Connection
Voyons voir comment ça fonctionne:
- Tout d'abord, un Connexion Objet avec le nom «obj» est créé à l’aide du mot-clé «createobject» et la connexion ADODB dans le paramètre lorsque vous créez un objet de connexion à la base de données est définie.
- Puis un Objet Recordset est créé pour accéder aux enregistrements d’une table particulière à partir de la base de données en utilisant «obj1». Recordset Object fournit un moyen d'accéder aux enregistrements à partir de la base de données.
- Après cela, une variable est déclarée pour un mettre en doute ‘Dbquery’ pour stocker la requête afin d’extraire les enregistrements de la base de données.
- Ensuite, un objet de connexion créé ci-dessus est ouvert pour commencer à travailler avec l'objet en fournissant tous les détails sur le fournisseur tels que SQL SERVER, le nom du serveur, le nom de la base de données, l'ID utilisateur et le mot de passe.
- Une requête est alors réalisé après avoir ouvert l'objet de jeu d'enregistrements en mentionnant la requête et l'objet de connexion.
- Ensuite, la tâche principale est effectuée pour récupérer la valeur du numéro de compte. d'une personne en particulier selon la requête utilisant des champs du jeu d'enregistrements qui mentionne l'index de l'élément où numéro de compte. est situé comme l'élément (0) dans ce cas. La valeur d'un champ est alors affichée à l'aide d'une boîte de message.
Noter: Les champs représentent les «colonnes» et le jeu d’enregistrements représente les «lignes» d’une table de base de données.
- Les objets sont alors fermé une fois la tâche terminée.
- Enfin, les deux objets - obj et obj1 respectivement sont publié en utilisant le mot-clé 'Rien'.
Noter : Il est recommandé de libérer les objets en utilisant «Définir le nom de l’objet = Rien» après l'achèvement de la tâche à la fin.
Nous avons tout vu sur l'établissement d'une connexion avec la base de données et la lecture et l'affichage des données en utilisant une combinaison de la base de données et de QTP.
Voyons quelques autres scénarios utilisant l'objet de connexion.
Exportation de données vers un fichier Excel à l'aide de l'objet de connexion ADODB
Dans cette section, nous verrons les différentes étapes de l'exportation des données vers un fichier Excel à partir de la base de données à l'aide du mécanisme d'objet de connexion dans VBScript.
Voici le code de ce scénario:
Set obj = CreateObject('ADODB.Connection') Set obj1 = CreateObject('ADODB.RecordSet ') Set obj2 = CreateObject('Excel.Application') Set obj3 = obj2.Workbooks.Open ('C:UsersRiya.xlsx') Set obj4 = obj3.Worksheets(1) obj.Provider =('Microsoft.ACE.OLEDB.12.0') obj.Open 'C:Users
ewdb.autodb' obj1.Open 'Select name, age from person', obj obj4.cells(1, 1) = 'Name' obj4.cells(1, 2) = 'Age' row = 2 While obj1.EOF = False obj4.cells(row, 1) = obj1.Fields('Name') obj4.cells(row, 2) = obj1.Fields('Age') obj1.MoveNext row = row+1 Wend obj3.Save obj2.Quit obj1.Close obj.Close Set obj4 = Nothing Set obj3 = Nothing Set obj2 = Nothing Set obj1 = Nothing Set obj = Nothing
Voyons voir comment ça fonctionne:
- Premièrement, les objets - Connexion Objet, objet RecordSet et objet Excel avec le nom «obj,« obj1 »et« obj2 »respectivement sont créés à l’aide du mot-clé« createobject ».
- Ensuite, un objet classeur - 'Obj3' est créé en mentionnant l'emplacement du fichier Excel et après cela feuille de travail object (‘obj4’) est créé pour spécifier la feuille du fichier Excel dans laquelle les données doivent être exportées.
- Ensuite, un objet de connexion créé ci-dessus est ouvert pour commencer à travailler avec l'objet et les détails du fournisseur sont mentionnés.
- Une requête est alors réalisé après avoir ouvert l'objet de jeu d'enregistrements en mentionnant la requête et l'objet de connexion.
- Ensuite, la tâche principale est effectuée pour stocker les valeurs de nom et d'âge d'une personne particulière dans le fichier Excel selon la requête à l'aide de des champs du jeu d'enregistrements dans les cellules de la feuille de la base de données. La boucle continuera jusqu'à ce que l'EOF ne soit pas faux (nous avons déjà discuté d'EOF).
- Le classeur Excel est alors enregistré .
- L'application Excel sera quitter une fois la tâche terminée.
- Les objets sont alors fermé une fois la tâche terminée.
- Enfin, tous les objets sont publié en utilisant le mot-clé 'Rien'.
Exportation de données vers un fichier texte à l'aide de l'objet de connexion ADODB
Dans cette section, nous verrons les différentes étapes de l'exportation de données vers un fichier texte à partir de la base de données à l'aide du mécanisme d'objet de connexion dans le VBScript.
Voici le code de ce scénario:
Set obj = CreateObject('ADODB.Connection') Set obj1 = CreateObject('ADODB.RecordSet ') Set obj2 = CreateObject('Scripting.FileSystemObject') Set obj3 = obj2.OpenTextFile('C:UsersRiya.xlsx') obj.Provider =('Microsoft.ACE.OLEDB.12.0') obj.Open 'C:Users
ewdb.autodb' obj1.Open 'Select name, age from person', obj obj3.WriteLine 'Name Age' obj3.WriteLine '------' While obj1.EOF = False obj3.WriteLine obj1.Fields('Name') & “ “ & obj1.Fields('Age') obj1.MoveNext Wend obj3.Close Set obj3 = Nothing Set obj2 = Nothing obj1.Close obj.Close Set obj1 = Nothing Set obj = Nothing
Voyons voir comment ça fonctionne:
- Premièrement, les objets - Connexion Objet, objet RecordSet et objet fichier avec le nom «obj,« obj1 »et« obj2 »respectivement sont créés à l’aide du mot-clé« createobject ».
- Ensuite, un objet fichier est ouvert mentionnant le lieu du fichier texte dans lequel les données doivent être exportées.
- Ensuite, un objet de connexion créé ci-dessus est ouvert pour commencer à travailler avec l'objet et les détails du fournisseur sont mentionnés.
- Une requête est alors réalisé après avoir ouvert l'objet de jeu d'enregistrements en mentionnant la requête et l'objet de connexion.
- Ensuite, le nom et l'âge sont écrits en utilisant rédaction méthode d'un objet de système de fichiers.
- Ensuite, la tâche principale consiste à écrire les valeurs de nom et d'âge dans le fichier texte d'une personne en particulier en utilisant le des champs du jeu d'enregistrements dans les cellules de la feuille de la base de données. La boucle continuera jusqu'à ce que l'EOF ne soit pas faux (nous avons déjà discuté d'EOF).
- Un objet File est alors fermé et les objets liés au fichier sont libérés.
- Les objets sont alors fermé une fois la tâche terminée.
- Enfin, l'objet de connexion et l'objet de jeu d'enregistrements sont publié en utilisant un mot clé 'Rien'.
Ce sont quelques-uns des principaux scénarios qui sont importants pour une bonne compréhension du concept. Ils forment la base du travail et traitent les codes pour gérer différents types de scénarios tout en traitant les objets de connexion dans le script.
Voyons maintenant la mise en œuvre de ces scénarios à travers un exemple simple.
Exemple:
Let’s see implementation of Exporting data in files Function Exporttoexcelfile() ‘Function for exporting data to excel file Set obj = CreateObject('ADODB.Connection') Set obj1 = CreateObject('ADODB.RecordSet ') Set obj2 = CreateObject('Excel.Application') Set obj3 = obj2.Workbooks.Open ('C:UsersRiya.xlsx') Set obj4 = obj3.Worksheets(1) obj.Provider =('Microsoft.ACE.OLEDB.12.0') obj.Open 'C:Users
ewdb.autodb' obj1.Open 'Select name, age from person', obj obj4.cells(1, 1) = 'Name' obj4.cells(1, 2) = 'Age' row = 2 If obj1.EOF = True Then Msgbox “No records found on the table!!” End If While obj1.EOF = False obj4.cells(row, 1) = obj1.Fields('Name') obj4.cells(row, 2) = obj1.Fields('Age') obj1.MoveNext row = row+1 Wend obj3.Save obj2.Quit obj1.Close obj.Close Set obj4 = Nothing Set obj3 = Nothing Set obj2 = Nothing Set obj1 = Nothing Set obj = Nothing End Function Function Exporttotextfile() ‘Function for exporting data to text file Set obj = CreateObject('ADODB.Connection') Set obj1 = CreateObject('ADODB.RecordSet ') Set obj2 = CreateObject('Scripting.FileSystemObject') Set obj3 = obj2.OpenTextFile('C:UsersRiya.xlsx') obj.Provider =('Microsoft.ACE.OLEDB.12.0') obj.Open 'C:Users
ewdb.autodb' obj1.Open 'Select name, age from person', obj obj3.WriteLine 'Name Age' obj3.WriteLine '------' If obj1.EOF = True Then Msgbox “No records found on the table!!” End If While obj1.EOF = False obj3.WriteLine obj1.Fields('Name') & “ “ & obj1.Fields('Age') obj1.MoveNext Wend obj3.Close Set obj3 = Nothing Set obj2 = Nothing obj1.Close obj.Close Set obj1 = Nothing Set obj = Nothing End Function Call Exporttoexcelfile() ‘Calling Function for exporting data to excel file Call Exporttotextfile() ‘Calling Function for exporting data to text file
Noter: Pour la sortie d'un Exemple , vous pouvez accéder à l'emplacement des fichiers et vérifier si les données sont exportées ou non dans les fichiers respectifs.
Conclusion
Je suis sûr que vous devez maintenant avoir acquis des connaissances sur l'importance et l'efficacité de l'utilisation Objets de connexion VBS ADODB .
Tutoriel suivant # 13 : Je couvrirai les «objets du système de fichiers» dans mon prochain tutoriel.
Restez à l'écoute et partagez votre expérience de l'utilisation des objets Connection et faites-nous savoir si vous avez des questions sur ce didacticiel.
lecture recommandée
- Utilisation d'objets Excel VBScript
- Objets de fichier VBScript: CopyFile, DeleteFile, OpenTextFile, lecture et écriture de fichier texte
- Tutoriel QTP # 7 - Paradigme d'identification des objets de QTP - Comment QTP identifie-t-il les objets de manière unique?
- Référentiel d'objets dans QTP - Tutoriel # 22
- Gestion des erreurs VBScript: VBScript en cas d'erreur, en cas d'erreur GoTo 0, en cas d'erreur, reprendre ensuite
- Instructions conditionnelles VBScript: VBScript If, ElseIf, Select Case
- Tutoriels VBScript: Apprenez VBScript à partir de zéro (plus de 15 tutoriels détaillés)
- Classes et objets en C ++