Dicas do OsmarJr

Criar e excluir tabelas e relacionamentos usando DDL SQL


O Microsoft Access inclui uma linguagem de Definição de Dados (DDL) que pode ser usada para criar e excluir (drop) tabelas e relacionamentos. estas operações tabém podem ser executadas com o VBA usando o Data Access Objects (DAO).

Nota: Todos os exemplos neste artigo assumem que os comandos são adicionados em uma consulta Microsoft Access e executadas clicando no botão Executar do menu consultas.

Maiores Informações

Para usar as declarações de definição de dados, crie uma nova consulta. Então clique em Específica SQL e Definição de Dados no menu Consultas. Introduza suas declarações de definição de dados na janela Consulta definição de Dados e execute a consulta clicando em Executar no menu consultas.

Para criar uma tabela com um campo ChavePrimária com tipo de dados Autonumeração, e um campo chamado MeuTexto, com tipo de dados texto e tamanho 10, entre com o segunte comando na janela Consulta definição de Dados e execute a consulta.

NOTA: Nas consultas exemplo, abaixo, um sublinhado (_) no final da linha é usado como caracter de continuação de linha. remova o sublinhado do final das linhas ao recriar estas consultas.

   CREATE TABLE Table1 (Id COUNTER CONSTRAINT ChavePrimária PRIMARY KEY, _
   MeuTexto TEXT (10))
				        

O lado Chave Estrangeira de um relacionamento não exige uma Chave Primária e pode ser criada executando-se a consulta a seguir. esta consulta cria uma tabela com um campo do tipo Inteiro longo e um campo tipo Texto com tamanho padrão de 255:

   CREATE TABLE Table2 (Id LONG, MeuTexto TEXT)
                        

Após criar ambas as tabelas, a execução do código abaixocria um relacionamento um-para-muitos entre Tabela1 e Tabela2, com a Tabela1 sendo o lado primário do relacionamento:

   ALTER TABLE Table2 ADD CONSTRAINT Relation1 FOREIGN KEY ([Id]) _
   REFERENCES Table1 ([Id])
				
Para excluir o relacionamento entre as tabelas, execute a seguinte consulta:
   ALTER TABLE Table2 DROP CONSTRAINT Relation1
				
Para excluir a Tabela1, execuite a consulta a seguir:
   DROP TABLE Table1
				
Para excluir a Tabela2, execute a consulta a seguir:
   DROP TABLE Table2
				
Os comandos DDL também podem ser executados usando a ação RunSQL. Para executar um comando DDL em código, use um procedimento similar ao exemplo a seguir:
   Sub ExecuteSQLDDL (SQLString As String)
      Dim db As Database, qd As QueryDef
      Set db = DBEngine.Workspaces(0).Databases(0)
      Set qd = db.CreateQueryDef("")
      qd.SQL = SQLString
      qd.Execute
      db.Close
   End Sub
				
Para executar esta Sub, use a sintaxe:
   ExecuteSQLDDL "DROP TABLE Table1"
				
Home

Contato | Copyright©Osmar José Correia Júnior | 24-Nov-2005 18:23