Pristupite VBA SQL primjerima

Ovaj vodič sadrži primjere korištenja SQL -a s VBA Accessom. Kao što ćete vidjeti u nastavku, za pokretanje SQL upita u programu Access s VBA možete koristiti bilo DoCmd.RunSQL ili CurrentDb.Execute metodama.

SQL Odaberite

Ovaj primjer će koristiti izraz SQL Select za otvaranje skupa zapisa:

Dim rs kao skup zapisa zapisa rs = CurrentDb.OpenRecordset ("odaberite * iz tablice1 gdje je broj = 0", dbOpenDynaset)

Tablica ažuriranja SQL -a

Ova linija VBA koda koristi metodu DoCmd.RunSQL za ažuriranje tablice:

DoCmd.RunSQL ("UPDATE table1 SET num = 0 where num = 999")

Ili možete koristiti .Execute metodu objekta baze podataka:

CurrentDb.Execute "UPDATE table1 SET num = 0 where num = 999"

Tablica izmjena SQL -a

Ova linija VBA koda koristi DoCmd.RunSQL za promjenu tablice:

DoCmd.RunSQL ("ALTER TABELA Table3 ADD COLUMN Novac za plaću")

Ili pomoću .Execute metode objekta baze podataka:

CurrentDb.Execute "ALTER TABLE Table3 ADD COLONN Novac za plaću"

Ispuštanje tablice

Ova linija VBA koda koristi DoCmd.RunSQL za promjenu tablice:

DoCmd.RunSQL ("DROP Table Table1")

Ili pomoću .Execute metode objekta baze podataka:

CurrentDb.Izvršite "DROP Table Table1"

SQL Brisanje

Ovaj kôd koristi DoCmd.RunSQL za brisanje zapisa iz tablice:

DoCmd.RunSQL ("IZBRIŠI IZ tablice1 gdje je broj = 999")

Ili pomoću .Execute metode objekta baze podataka:

CurrentDb.Execute "DELETE FROM table1 where num = 999"

SQL Umetnite u

Ova instanca DoCmd.RunSQL umetne zapise u tablicu:

DoCmd.RunSQL ("INSERT INTO Table1 (LastName, dob, num) VALUES ('L1',#01/01/2001#, 78)")

Ili pomoću .Execute metode objekta baze podataka:

CurrentDb.Execute "INSERT INTO Table1 (LastName, dob, num) VALUES ('L1',#01/01/2001#, 78)"

SQL tablica za stvaranje

Ovaj kôd će stvoriti tablicu pomoću SQL -a:

CurrentDb.Execute "CREATE TABLE Table1 (KeyID COUNTER CONSTRAINT PrimaryKey PRIMARY KEY, Field1 TEXT, Field2 TEXT)"

Ili pomoću .Execute metode objekta baze podataka:

CurrentDb.Execute "CREATE TABLE Table1 (KeyID COUNTER CONSTRAINT PrimaryKey PRIMARY KEY, Field1 TEXT, Field2 TEXT)"

Izradi indeks

Ova linija VBA koda koristi DoCmd.RunSQL za promjenu tablice:

DoCmd.RunSQL ("CREATE INDEX" & IndexName & "ON" & TableName & "(" & Naziv stupca & ");")

Ili pomoću .Execute metode objekta baze podataka:

CurrentDb.Execute "CREATE INDEX" & IndexName & "ON" & TableName & "(" & Naziv stupca & ");"

Indeks pada

Ova linija VBA koda koristi DoCmd.RunSQL za promjenu tablice:

DoCmd.RunSQL "ID INDEKSA DROP INDEX ON Table1;"

Ili pomoću .Execute metode objekta baze podataka:

CurrentDb.Execute "DROP INDEX ID ON ON Table1;"

Stvorite bazu podataka

Ovaj kôd će stvoriti bazu podataka (bez SQL -a):

Access.DBEngine.CreateDabasebase "c: \ Temp \ testDB1.accdb", DB_LANG_GENERAL

SQL upiti

Otvorite upit

Pomoću DoCmd.OpenQuery možete otvoriti spremljeni upit:

DoCmd.OpenQuery "qry_1", acViewNormal, acEdit

Izvrši upit

CurrentDB.Execute će izvršiti upit:

CurrentDb.Izvršite "qry_1", dbFailOnError

Izvezite upit u Excel

DoCmd.OutputTo će izvesti upit u Excel:

DoCmd.OutputTo acOutputQuery, "Query1", acFormatXLS, "c: \ temp \ ExportedQuery.xls"

Vi ćete pomoći u razvoju web stranice, dijeljenje stranicu sa svojim prijateljima

wave wave wave wave wave