Accesați exemple VBA SQL

Acest tutorial conține exemple de utilizare a SQL cu VBA Access. După cum veți vedea mai jos, pentru a rula interogări SQL în Access cu VBA, puteți utiliza fie DoCmd.RunSQL sau CurrentDb.Execute metode.

SQL Select

Acest exemplu va folosi instrucțiunea SQL Select pentru a deschide un set de înregistrări:

Dim rs As Recordset Set rs = CurrentDb.OpenRecordset ("selectați * din Tabelul 1 unde num = 0", dbOpenDynaset)

Tabel de actualizare SQL

Această linie de cod VBA folosește metoda DoCmd.RunSQL pentru a actualiza un tabel:

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

Sau puteți utiliza metoda .Execute a obiectului bazei de date:

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

Tabel SQL Alter

Această linie de cod VBA folosește DoCmd.RunSQL pentru a modifica un tabel:

DoCmd.RunSQL ("ALTER TABLE Tabelul 3 ADĂUGAȚI CULOANA Banii salariului")

Sau cu metoda .Execute a obiectului bazei de date:

CurrentDb.Execute "ALTER TABLE Tabelul 3 ADĂUGAȚI CULOANA Banii salariului"

Drop Table

Această linie de cod VBA folosește DoCmd.RunSQL pentru a modifica un tabel:

DoCmd.RunSQL ("Tabelul DROP Table1")

Sau cu metoda .Execute a obiectului bazei de date:

CurrentDb.Execute "DROP Table Table 1"

Ștergere SQL

Acest cod folosește DoCmd.RunSQL pentru a șterge înregistrările dintr-un tabel:

DoCmd.RunSQL ("ȘTERGERE DIN tabelul 1 unde num = 999")

Sau cu metoda .Execute a obiectului bazei de date:

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

SQL Insert Into

Această instanță a DoCmd.RunSQL introduce înregistrări într-un tabel:

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

Sau cu metoda .Execute a obiectului bazei de date:

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

SQL Create Table

Acest cod va crea un tabel folosind SQL:

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

Sau cu metoda .Execute a obiectului bazei de date:

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

Creați index

Această linie de cod VBA folosește DoCmd.RunSQL pentru a modifica un tabel:

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

Sau cu metoda .Execute a obiectului bazei de date:

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

Drop Index

Această linie de cod VBA folosește DoCmd.RunSQL pentru a modifica un tabel:

DoCmd.RunSQL "DROP INDEX ID ON Table1;"

Sau cu metoda .Execute a obiectului bazei de date:

CurrentDb.Execute "DROP INDEX ID ON Table1;"

Creați baza de date

Acest cod va crea o bază de date (fără SQL):

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

Interogări SQL

Deschideți interogarea

Puteți utiliza DoCmd.OpenQuery pentru a deschide o interogare salvată:

DoCmd.OpenQuery "qry_1", acViewNormal, acEdit

Executați interogare

CurrentDB.Execute va executa o interogare:

CurrentDb.Execute "qry_1", dbFailOnError

Exportați interogarea în Excel

DoCmd.OutputTo va exporta o interogare în Excel:

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

Vei ajuta la dezvoltarea site-ului, partajarea pagina cu prietenii

wave wave wave wave wave