working with vbscript adodb connection objects
Uvod u VBScript Objekte povezivanja: Vodič br. 12
U mojoj prethodnoj VBS vodič , razgovarali smo o Excel objekti ’U VBScriptu. U ovom uputstvu objasnit ću vam Objekti veze koji se koriste u VBScriptu.
VBScript podržava različite vrste objekata, a među njih su i Connection Objects. Objekti povezivanja uglavnom se nazivaju objektima koji pružaju podršku koderima za rad i bavljenje vezama s bazom podataka.
Ovaj vodič će vas provesti kroz sve aspekte objekata povezivanja u VBScriptu, uključujući njegova različita svojstva i metode, zajedno s jednostavnim primjerima za vaše lako razumijevanje.
Što ćete naučiti:
- Pregled
- Svojstva i metode objekata povezivanja
- Uspostavljanje veze s bazom podataka pomoću ADODB objekta veze
- Izvoz podataka u Excel datoteku pomoću ADODB objekta povezivanja
- Izvoz podataka u tekstualnu datoteku pomoću ADODB Connection Objecta
- Zaključak
- Preporučena literatura
Pregled
Sve baze podataka kao što su SQL Server, PL / SQL, itd. Moraju biti instaliran na vašem računalu za rad s Database Connections.
Kao takav, ne postoji niti jedan neposredan mehanizam za povezivanje s bazom podataka u QTP-u. Ali uz pomoć ADODB objekti , možete komunicirati s bazom podataka i raditi s SQL upitima kako biste dohvatili podatke iz baze podataka.
TEŠKOĆA stoji za ActiveX podatkovni objekti a to osigurava mehanizam da djeluje kao posrednik između QTP-a i baze podataka.
Ova je tema bila osnova za rad s bazom podataka i dugoročno bi vam bilo korisno ako je bolje razumijete.
Pokušat ću vam dati razumijevanje svih različitih kodova, svojstava i metoda koje je potrebno napisati za lak rad s bazom podataka, tako da možete jednostavno sami napisati dio koda.
Krenimo sada sa Svojstvima i metodama koje su korisne u uspostavljanju veze s bazom podataka.
Svojstva i metode objekata povezivanja
Postoje različita svojstva i metode koje podržavaju izdvajanje podataka iz baze podataka.
kako riješiti indeks niza izvan granica iznimke u javi
Popis svojstava ADODB objekta veze je kako slijedi:
# 1) Niz veze :
Ovo je vrlo korisno svojstvo koje se koristi za stvaranje veze s bazom podataka i uključuje detalje veze poput detalja Upravljački program, ime poslužitelja baze podataka, korisničko ime i lozinka .
# 2) Istek veze :
To se koristi za definiranje potrebnog vremena za čekajući radi uspostavljanja veze.
# 3) Pružatelj usluga :
Ovo svojstvo pruža sve pojedinosti povezane s davateljem usluga, tj. Naziv Pružatelj veze .
# 4) Država :
To pruža informacije o stanju veze, tj. Ako je veza UKLJUČENO ili ISKLJUČENO .
Gore navedena svojstva su objekta veze. Međutim, postoji Objekt RecordSet također (hoćemo li razgovarati za neko vrijeme).
Popis njegovih svojstava je sljedeći:
# 1) BOF:
Ovo se svojstvo koristi za poznavanje položaja trenutnog zapisa. Ako je prisutan položaj trenutnog zapisa prije prvog zapisa skupa zapisa, tada će ovo svojstvo vratiti true.
# 2) EOF:
Ovo je samo naličje gore navedenog. Ako je prisutan položaj trenutnog zapisa nakon posljednjeg zapisa skupa zapisa, tada će ovo svojstvo vratiti true.
Bilješka: Vrijednosti EOF i BOF bit će lažne kada u zapisu nema zapisa. Ovo je korisno u slučaju provjere valjanosti praznih zapisa, tj. Kada u skupu zapisa nema zapisa.
# 3) MaxCount:
Ovo je korisno u postavljanju maksimum vrijednosti redaka / zapisa koji se mogu vratiti iz baze podataka, tj. ako želite dohvatiti najviše 20 redaka odjednom iz podataka, onda možete postaviti ovo svojstvo kao 20.
Pogledajmo sada Metode:
Popis metoda povezivanja ADODB i RecordSet Object metoda su kako slijedi:
- Otvoren: Ova se metoda koristi za otvaranje objekta veze baze podataka / objekta zapisa zapisa.
- Izvršiti: To se koristi za izvršavanje SQL upita koji se pruža.
- Zatvoriti: Ovim se zatvara veza / baza podataka koja se otvara.
- Otkazati: Ovo je metoda zapisa zapisa koja se koristi za otkazivanje postojećeg izvršavanja veze s bazom podataka.
- klon: Ovo je metoda zapisa zapisa i koristi se za dobivanje klona postojećeg objekta skupa zapisa.
- potez: Ovo je metoda skupa zapisa koja se koristi za pomicanje pokazivača na određeno mjesto unutar skupa zapisa na temelju broja koji je spomenut.
- računati: Ovo je metoda skupa zapisa i koristi se za dobivanje ukupnog broja polja prisutnih u skupu zapisa, tj. Ukupnog broja stupaca u tablici.
- stavka (i): Ovo je metoda snimanja zapisa. To se koristi za dobivanje stavke čiji je indeks određen ukupnim brojem polja prisutnih u skupu zapisa.
To su različita svojstva i metode koje ćete koristiti dok se bavite objektima povezanim s Vezom.
Prijeđimo na praktičnu provedbu kako bismo znali kako funkcioniraju ti objekti.
Uspostavljanje veze s bazom podataka pomoću ADODB objekta veze
U ovom ćemo odjeljku vidjeti različite korake koji su uključeni u stvaranje veze baze podataka pomoću mehanizma Connection Object u VBScriptu.
Slijedi Kôd za stvaranje veze:
Postavi obj = createobject (“ADODB.Connection”) ‘ Stvaranje ADODB objekta veze
Postavi obj1 = createobject (“ADODB.RecordSet”) ‘ Stvaranje ADODB objekta skupa zapisa
Prigušeni dbquery 'Deklariranje bquery varijable upita baze podataka
Dbquery = 'Odaberite acctno s dbo.acct gdje je ime =' Harsh '' ‘Stvaranje upita
obj.Open “Provider = SQLQLEDB; Server =. SQLEXPRESS; UserId = test; Lozinka = P @ 123; Baza podataka = AUTODB” ‘Otvaranje veze
obj1.otvori dbquery, obj ‘Izvršavanje upita pomoću skupa zapisa
val1 = obj1.fields.item (0) 'Vratit će vrijednost polja
msgbox val1 ‘Prikazivanje vrijednosti stavke polja 0 tj. Stupca 1
obj.close ‘Zatvaranje objekta veze
obj1.close ‘Zatvaranje objekta veze
Postavi obj1 = Ništa ' Otpuštanje objekta Recordset
Postavi obj = Ništa ' Otpuštanje objekta Connection
Pogledajmo kako to funkcionira:
- Prvo, a Veza Objekt s imenom ‘obj’ kreira se pomoću ključne riječi ‘createobject’ i definirana je ADODB veza u parametru dok izrađujete objekt veze s bazom podataka.
- Tada a Objekt snimljenog zapisa stvoren je za pristup zapisima određene tablice iz baze podataka pomoću 'obj1'. Objekt Recordset pruža način pristupa zapisima iz baze podataka.
- Nakon toga se deklarira varijabla za upit 'Dbquery' za spremanje upita za dohvaćanje zapisa iz baze podataka.
- Tada je objekt veze koji je gore stvoren otvorio za početak rada s objektom pružanjem svih detalja o davatelju usluga kao što su SQL SERVER, ime poslužitelja, ime baze podataka, korisnički ID i lozinka.
- Upit je onda pogubljen nakon otvaranja objekta skupa zapisa spominjanjem upita i objekta veze.
- Dalje se izvodi glavni zadatak za dohvaćanje vrijednosti akta br. određene osobe prema upitu pomoću polja seta zapisa koji spominje indeks predmeta kod kojeg je djelovanje br. se u ovom slučaju nalazi poput stavke (0). Vrijednost polja tada se prikazuje uz pomoć okvira za poruke.
Bilješka: Polja predstavljaju 'stupce', a set zapisa predstavlja 'retke' tablice baze podataka.
- Predmeti su tada zatvoreno kako je zadatak izvršen.
- Konačno, oba objekta - obj i obj1 jesu pušten pomoću ključne riječi 'Ništa'.
Bilješka : Dobra je praksa oslobađanje predmeta pomoću ‘Postavi naziv objekta = Ništa’ nakon završetka zadatka na kraju.
Vidjeli smo sve o uspostavljanju veze s bazom podataka i čitanju i prikazivanju podataka pomoću kombinacije baze podataka i QTP-a.
Pogledajmo nekoliko drugih scenarija pomoću Objekta povezivanja.
Izvoz podataka u Excel datoteku pomoću ADODB objekta povezivanja
U ovom ćemo odjeljku vidjeti različite korake koji su uključeni u izvoz podataka u excel datoteku iz baze podataka pomoću mehanizma Connection Object u VBScriptu.
Slijedi Kôd za ovaj scenarij:
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
Pogledajmo kako to funkcionira:
- Prvo, predmeti - Veza Objekt, objekt RecordSet i objekt Excel s imenom 'obj', 'obj1' odnosno 'obj2' stvoreni su pomoću ključne riječi 'createobject'.
- Zatim, objekt radne knjige - Izrađuje se 'obj3' koji spominje mjesto excelove datoteke i nakon toga radni list objekt (‘obj4’) stvoren je za specificiranje lista u excel datoteci gdje podatke treba izvesti.
- Tada je objekt veze koji je gore stvoren otvorio za početak rada s objektom i spominju se detalji davatelja usluge.
- Upit je onda pogubljen nakon otvaranja objekta zapisa zapisa spominjanjem upita i objekta veze.
- Zatim se izvodi glavni zadatak za spremanje vrijednosti imena i dobi određene osobe u datoteku excel prema upitu pomoću polja skupa zapisa u ćelijama lista iz baze podataka. Petlja će se nastaviti dok EOF ne bude lažan (o EOF-u smo već razgovarali).
- Excel radna knjiga je tada spasio .
- Excel aplikacija će prestati kako je zadatak izvršen.
- Predmeti su tada zatvoreno kako je zadatak izvršen.
- Napokon, svi predmeti jesu pušten pomoću ključne riječi 'Ništa'.
Izvoz podataka u tekstualnu datoteku pomoću ADODB Connection Objecta
U ovom ćemo odjeljku vidjeti različite korake koji su uključeni u izvoz podataka u tekstualnu datoteku iz baze podataka pomoću mehanizma Connection Object u VBScriptu.
Slijedi Kôd za ovaj scenarij:
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
Pogledajmo kako to funkcionira:
- Prvo, predmeti - Veza Objekt, objekt RecordSet i objekt datoteke s imenom 'obj', 'obj1' odnosno 'obj2' stvoreni su pomoću ključne riječi 'createobject'.
- Zatim se otvara objekt datoteke koji spominje mjesto tekstualne datoteke u koju podatke treba izvesti.
- Tada je objekt veze koji je gore stvoren otvorio za početak rada s objektom i spominju se detalji davatelja usluge.
- Upit je onda pogubljen nakon otvaranja objekta zapisa zapisa spominjanjem upita i objekta veze.
- Zatim se pomoću imena pišu ime i dob linija za pisanje metoda objekta datotečnog sustava.
- Dalje, izvodi se glavni zadatak zapisivanja vrijednosti imena i dobi u tekstualnu datoteku određene osobe pomoću polja skupa zapisa u ćelijama lista iz baze podataka. Petlja će se nastaviti dok EOF ne bude lažan (o EOF-u smo već razgovarali).
- Objekt File je tada zatvoreno i objekti povezani s datotekom se oslobađaju.
- Predmeti su tada zatvoreno kako je zadatak izvršen.
- Napokon, objekt veze i objekt skupa zapisa jesu pušten pomoću ključne riječi 'Ništa'.
Ovo su neki od glavnih scenarija koji su važni za pravilno razumijevanje koncepta. Oni čine temelj za rad i bavljenje kodovima za rukovanje različitim vrstama scenarija dok se bave objektima veze u skripti.
Sada, shvatimo provedbu ovih scenarija na jednostavnom primjeru.
Primjer:
otvaranje xml datoteke u Excelu
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
Bilješka: Za izlaz an Primjer , možete otići na mjesto datoteka i provjeriti izvoze li se podaci u odgovarajuće datoteke.
Zaključak
Siguran sam da ste do sada morali steći znanje o važnosti i učinkovitosti upotrebe Objekti veze VBS ADODB .
Sljedeći vodič # 13 : Objasnit ću 'Objekti datotečnog sustava' u sljedećem vodiču.
Pratite nas i podijelite svoje iskustvo rada s objektima Connection i javite nam ako imate pitanja o ovom vodiču.
Preporučena literatura
- Rad s VBScript Excel objektima
- Objekti datoteke VBScript: CopyFile, DeleteFile, OpenTextFile, čitanje i pisanje tekstualne datoteke
- QTP vodič # 7 - QTP-ova paradigma identifikacije objekata - Kako QTP jedinstveno identificira objekte?
- Spremište objekata u QTP-u - Vodič br. 22
- Rukovanje pogreškama VBScripta: VBScript o pogrešci, pri pogrešci Idi 0, o pogrešci Nastavi dalje
- Uvjetne izjave VBScripta: VBScript If, ElseIf, Select Case
- VBScript vodiči: Naučite VBScript ispočetka (15+ dubinskih vodiča)
- Razredi i objekti u C ++