working with vbscript adodb connection objects
Introduzione agli oggetti di connessione VBScript: tutorial # 12
Nel mio precedente Tutorial VBS , abbiamo discusso su ' Oggetti Excel 'In VBScript. In questo tutorial, spiegherò su Oggetti di connessione che vengono utilizzati in VBScript.
VBScript supporta diversi tipi di oggetti e gli oggetti connessione sono tra questi. Gli oggetti di connessione sono principalmente indicati come gli oggetti che forniscono supporto ai codificatori per lavorare e gestire le connessioni al database.
Questo tutorial ti guiderà attraverso tutti gli aspetti degli oggetti di connessione in VBScript comprese le sue diverse proprietà e metodi insieme a semplici esempi per una facile comprensione.
Cosa imparerai:
- Panoramica
- Proprietà e metodi degli oggetti di connessione
- Stabilire una connessione al database utilizzando l'oggetto connessione ADODB
- Esportazione di dati in un file Excel utilizzando l'oggetto di connessione ADODB
- Esportazione dei dati in un file di testo utilizzando l'oggetto di connessione ADODB
- Conclusione
- Lettura consigliata
Panoramica
Qualsiasi database come SQL Server, PL / SQL, ecc. Deve essere installato sul tuo computer per lavorare con le connessioni al database.
In quanto tale, non esiste alcun meccanismo diretto per connettersi al database nel QTP. Ma con l'aiuto di Oggetti ADODB , puoi interagire con il database e lavorare con le query SQL per recuperare i dati dal database.
ADO sta per Oggetti dati ActiveX e questo fornisce il meccanismo per agire da intermediario tra il QTP e il database.
Questo argomento ha costituito la base del lavoro con il database e sarebbe molto utile per te a lungo termine se ne avessi una migliore comprensione.
Cercherò di farti capire tutti i diversi codici, proprietà e metodi che devono essere scritti per lavorare con il database in modo semplice in modo che tu possa scrivere facilmente un pezzo di codice da solo.
Ora, iniziamo con le proprietà e i metodi che sono utili per stabilire una connessione con il database.
Proprietà e metodi degli oggetti di connessione
Esistono diverse proprietà e metodi che supportano l'estrazione dei dati dal database.
sviluppatore di software nelle domande del colloquio di prova
L'elenco delle proprietà dell'oggetto di connessione ADODB è il seguente:
# 1) Stringa di connessione :
Questa è una proprietà molto utile che viene utilizzata per creare una connessione al database e include i dettagli della connessione come i dettagli del file Driver, nome del server database, nome utente e password .
# 2) Timeout di connessione :
Viene utilizzato per definire il tempo richiesto per in attesa per stabilire una connessione.
# 3) Fornitore :
Questa proprietà fornisce tutti i dettagli relativi al provider, ad esempio il nome del file Provider di connessione .
# 4) Stato :
Questo fornisce le informazioni sullo stato della connessione, ad esempio se la connessione è Acceso o spento .
Quelle sopra menzionate sono le proprietà di un oggetto di connessione. Tuttavia, esiste un file Oggetto RecordSet anche (ne parleremo tra poco).
L'elenco delle sue proprietà è il seguente:
# 1) BOF:
Questa proprietà viene utilizzata per conoscere la posizione del record corrente. Se la posizione del record corrente è presente prima del primo record del recordset, questa proprietà restituirà true.
# 2) EOF:
Questo è solo il contrario di quello sopra. Se la posizione del record corrente è presente dopo l'ultimo record del recordset, questa proprietà restituirà true.
Nota: I valori di EOF e BOF saranno falsi quando non sono presenti record nel recordset. Ciò è utile in caso di convalida di record vuoti, ad esempio quando non ci sono record nel recordset.
# 3) MaxCount:
Questo è utile per impostare il massimo valori di righe / record che possono essere restituiti dal database, ad esempio se si desidera recuperare un massimo di 20 righe alla volta dai dati, è possibile impostare questa proprietà su 20.
cos'è il beta test nel test del software
Diamo ora un'occhiata ai metodi:
L'elenco dei metodi dell'oggetto di connessione ADODB e dell'oggetto RecordSet è il seguente:
- Aperto: Questo metodo viene utilizzato per aprire un oggetto di connessione al database / oggetto recordset.
- Eseguire: Viene utilizzato per eseguire una query SQL fornita.
- Vicino: Viene utilizzato per chiudere una connessione / recordset al database che viene aperto.
- Annulla: Questo è un metodo recordset che viene utilizzato per annullare l'esecuzione esistente della connessione al database.
- clone: Questo è un metodo recordset e viene utilizzato per ottenere il clone dell'oggetto recordset esistente.
- mossa: Si tratta di un metodo recordset che viene utilizzato per spostare il puntatore in una posizione specificata all'interno di un recordset sulla base del conteggio menzionato.
- contare: Questo è un metodo recordset e viene utilizzato per ottenere il numero totale di campi presenti nel recordset, ovvero il numero totale di colonne in una tabella.
- articolo (i): Questo è un metodo recordset. Viene utilizzato per ottenere l'elemento il cui indice è specificato dal numero totale di campi presenti in un recordset.
Queste sono le diverse proprietà e metodi che utilizzerai per gestire gli oggetti correlati alla connessione.
Passiamo all'implementazione pratica per conoscere il funzionamento di questi oggetti.
Stabilire una connessione al database utilizzando l'oggetto connessione ADODB
In questa sezione, vedremo i diversi passaggi coinvolti nella creazione di una connessione al database utilizzando il meccanismo Oggetto connessione in VBScript.
Di seguito è riportato il codice per la creazione di una connessione:
Imposta obj = createobject ('ADODB.Connection') ' Creazione di un oggetto di connessione ADODB
Imposta obj1 = createobject ('ADODB.RecordSet') ' Creazione di un oggetto Recordset ADODB
Dim dbquery 'Dichiarazione di una variabile di query del database bquery
Dbquery = 'Seleziona acctno da dbo.acct dove name =' Harsh '' 'Creazione di una query
obj.Open 'Provider = SQLQLEDB; Server =. SQLEXPRESS; UserId = test; Password = P @ 123; Database = AUTODB' 'Apertura di una connessione
obj1.Open dbquery, obj 'Esecuzione della query utilizzando il recordset
val1 = obj1.fields.item (0) 'Restituirà il valore del campo
msgbox val1 'Visualizzazione del valore dell'elemento di campo 0, ovvero colonna 1
obj.close 'Chiusura dell'oggetto connessione
obj1.close 'Chiusura dell'oggetto connessione
Imposta obj1 = Nothing ' Rilascio di un oggetto Recordset
Imposta obj = Nothing ' Rilascio dell'oggetto connessione
Vediamo come funziona:
- In primo luogo, a Connessione Oggetto con il nome 'obj' viene creato utilizzando la parola chiave 'createobject' e viene definita la connessione ADODB nel parametro mentre si crea un oggetto connessione database.
- Poi un Oggetto Recordset viene creato per accedere ai record di una particolare tabella dal database utilizzando 'obj1'. L'oggetto Recordset fornisce un modo per accedere ai record dal database.
- Dopodiché, viene dichiarata una variabile per un file query 'Dbquery' per memorizzare la query per recuperare i record dal database.
- Quindi è un oggetto di connessione creato sopra ha aperto per iniziare a lavorare con l'oggetto fornendo tutti i dettagli sul provider come SQL SERVER, nome del server, nome del database, ID utente e password.
- Una query è quindi eseguito dopo aver aperto l'oggetto recordset menzionando la query e l'oggetto connessione.
- Successivamente, viene eseguita l'attività principale per recuperare il valore di acct no. di una persona in particolare secondo la query utilizzando campi del recordset che riporta l'indice dell'item in cui acct n. si trova come elemento (0) in questo caso. Il valore di un campo viene quindi visualizzato con l'aiuto di una finestra di messaggio.
Nota: I campi rappresentano le 'colonne' e il recordset rappresenta le 'righe' di una tabella di database.
- Gli oggetti sono quindi Chiuso quando l'attività è stata completata.
- Infine, entrambi gli oggetti - rispettivamente obj e obj1 lo sono rilasciato utilizzando la parola chiave 'Nothing'.
Nota : È una buona pratica rilasciare gli oggetti utilizzando 'Imposta nome oggetto = Niente' dopo il completamento dell'attività alla fine.
Abbiamo visto tutto su come stabilire una connessione con il database e leggere e visualizzare i dati utilizzando una combinazione di database e QTP.
Vediamo alcuni altri scenari che utilizzano l'oggetto connessione.
Esportazione di dati in un file Excel utilizzando l'oggetto di connessione ADODB
In questa sezione, vedremo i diversi passaggi coinvolti nell'esportazione dei dati in un file excel dal database utilizzando il meccanismo dell'oggetto di connessione in VBScript.
Di seguito è riportato il codice per questo scenario:
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
Vediamo come funziona:
- In primo luogo, gli oggetti - Connessione Oggetto, Oggetto RecordSet e Oggetto Excel con il nome 'obj,' obj1 'e' obj2 'vengono creati rispettivamente utilizzando la parola chiave' createobject '.
- Quindi, un oggetto cartella di lavoro - 'Obj3' viene creato menzionando la posizione del file excel e successivamente foglio di lavoro l'oggetto ('obj4') viene creato per specificare il foglio nel file excel in cui i dati devono essere esportati.
- Quindi è un oggetto di connessione creato sopra ha aperto per iniziare a lavorare con l'oggetto e vengono menzionati i dettagli del provider.
- Una query è quindi eseguito dopo aver aperto l'oggetto recordset menzionando l'oggetto query e connessione.
- Successivamente, l'attività principale viene eseguita per memorizzare i valori di nome ed età di una determinata persona nel file excel secondo la query utilizzando campi del recordset nelle celle del foglio dal database. Il ciclo continuerà fino a quando l'EOF non è falso (abbiamo già discusso EOF).
- La cartella di lavoro di Excel è quindi salvato .
- L'applicazione Excel lo farà smettere quando l'attività è stata completata.
- Gli oggetti sono quindi Chiuso quando l'attività è stata completata.
- Infine, tutti gli oggetti sono rilasciato utilizzando la parola chiave 'Nothing'.
Esportazione dei dati in un file di testo utilizzando l'oggetto di connessione ADODB
In questa sezione, vedremo i diversi passaggi coinvolti nell'esportazione dei dati in un file di testo dal database utilizzando il meccanismo dell'oggetto di connessione in VBScript.
Di seguito è riportato il codice per questo scenario:
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
Vediamo come funziona:
- In primo luogo, gli oggetti - Connessione Oggetto, Oggetto RecordSet e Oggetto File con il nome 'obj,' obj1 'e' obj2 'vengono creati rispettivamente utilizzando la parola chiave' createobject '.
- Quindi, viene aperto un oggetto file che menziona il file Posizione del file di testo in cui i dati devono essere esportati.
- Quindi è un oggetto di connessione creato sopra ha aperto per iniziare a lavorare con l'oggetto e vengono menzionati i dettagli del provider.
- Una query è quindi eseguito dopo aver aperto l'oggetto recordset menzionando l'oggetto query e connessione.
- Quindi, nome ed età vengono scritti utilizzando linea di scrittura metodo di un oggetto del file system.
- Successivamente, l'attività principale viene eseguita per scrivere i valori di nome ed età nel file di testo di una determinata persona utilizzando l'estensione campi del recordset nelle celle del foglio dal database. Il ciclo continuerà fino a quando l'EOF non è falso (abbiamo già discusso EOF).
- Un oggetto File è quindi Chiuso e gli oggetti relativi al file vengono rilasciati.
- Gli oggetti sono quindi Chiuso quando l'attività è stata completata.
- Infine, l'oggetto connessione e l'oggetto recordset sono rilasciato utilizzando una parola chiave 'Nothing'.
Questi sono alcuni degli scenari principali che sono importanti per la corretta comprensione del concetto. Costituiscono la base per lavorare e gestire i codici per la gestione di diversi tipi di scenari mentre si tratta di oggetti connessione nello script.
Ora, vediamo l'implementazione di questi scenari attraverso un semplice esempio.
Esempio:
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
Nota: Per l'uscita di un file Esempio , puoi andare alla posizione dei file e controllare se i dati vengono esportati o meno nei rispettivi file.
Conclusione
Sono sicuro che ormai devi aver acquisito conoscenza dell'importanza e dell'efficacia dell'utilizzo Oggetti di connessione VBS ADODB .
Prossimo tutorial n.13 : Tratterò 'Oggetti del file system' nel mio prossimo tutorial.
Resta sintonizzato e condividi la tua esperienza di lavoro con gli oggetti Connection e facci sapere se hai domande su questo tutorial.
Lettura consigliata
- Lavorare con oggetti Excel VBScript
- Oggetti file VBScript: CopyFile, DeleteFile, OpenTextFile, Read and Write Text File
- Tutorial QTP n. 7 - Il paradigma di identificazione degli oggetti di QTP - In che modo QTP identifica gli oggetti in modo univoco?
- Repository di oggetti in QTP - Tutorial # 22
- Gestione degli errori di VBScript: VBScript in caso di errore, in caso di errore GoTo 0, in caso di errore Riprendi successivo
- Dichiarazioni condizionali VBScript: VBScript If, ElseIf, Select Case
- Tutorial VBScript: impara VBScript da zero (oltre 15 tutorial approfonditi)
- Classi e oggetti in C ++