Acessar exemplos de VBA SQL

Este tutorial contém exemplos de uso de SQL com VBA Access. Como você verá abaixo, para executar consultas SQL no Access com VBA, você pode usar o DoCmd.RunSQL ou CurrentDb.Execute métodos.

SQL Select

Este exemplo usará a instrução SQL Select para abrir um conjunto de registros:

Dim rs As Recordset Set rs = CurrentDb.OpenRecordset ("select * from Table1 where num = 0", dbOpenDynaset)

Tabela de atualização SQL

Esta linha de código VBA usa o método DoCmd.RunSQL para atualizar uma Tabela:

DoCmd.RunSQL ("ATUALIZAR tabela1 SET num = 0 onde num = 999")

Ou você pode usar o método .Execute do objeto de banco de dados:

CurrentDb.Execute "ATUALIZAR tabela1 SET num = 0 onde num = 999"

Tabela de alteração de SQL

Esta linha de código VBA usa DoCmd.RunSQL para alterar uma tabela:

DoCmd.RunSQL ("ALTER TABLE Table3 ADD COLUMN Salário dinheiro")

Ou com o método .Execute do objeto de banco de dados:

CurrentDb.Execute "ALTER TABLE Table3 ADD COLUMN Salário dinheiro"

Mesa de queda

Esta linha de código VBA usa DoCmd.RunSQL para alterar uma tabela:

DoCmd.RunSQL ("Tabela DROP Tabela 1")

Ou com o método .Execute do objeto de banco de dados:

CurrentDb.Execute "Tabela DROP Tabela 1"

Excluir SQL

Este código usa DoCmd.RunSQL para excluir registros de uma tabela:

DoCmd.RunSQL ("EXCLUIR DA tabela1 onde num = 999")

Ou com o método .Execute do objeto de banco de dados:

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

SQL Insert Into

Esta instância de DoCmd.RunSQL insere registros em uma tabela:

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

Ou com o método .Execute do objeto de banco de dados:

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

SQL Criar Tabela

Este código criará uma tabela usando SQL:

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

Ou com o método .Execute do objeto de banco de dados:

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

Criar Índice

Esta linha de código VBA usa DoCmd.RunSQL para alterar uma tabela:

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

Ou com o método .Execute do objeto de banco de dados:

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

Índice de queda

Esta linha de código VBA usa DoCmd.RunSQL para alterar uma tabela:

DoCmd.RunSQL "DROP INDEX ID ON Table1;"

Ou com o método .Execute do objeto de banco de dados:

CurrentDb.Execute "DROP INDEX ID ON Table1;"

Criar banco de dados

Este código criará um banco de dados (sem SQL):

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

Consultas SQL

Consulta aberta

Você pode usar DoCmd.OpenQuery para abrir uma consulta salva:

DoCmd.OpenQuery "qry_1", acViewNormal, acEdit

Executar consulta

CurrentDB.Execute executará uma consulta:

CurrentDb.Execute "qry_1", dbFailOnError

Exportar consulta para Excel

DoCmd.OutputTo exportará uma consulta para o Excel:

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

Você vai ajudar o desenvolvimento do site, compartilhando a página com seus amigos

wave wave wave wave wave