Instrução INSERT INTO

Adiciona um registro ou vários registros a uma tabela. Isso é conhecido como uma consulta acréscimo (consulta acréscimo: uma consulta ação que adiciona os registros em um conjunto de resultados no fim de uma tabela existente.).

Sintaxe

Consulta acréscimo de registro múltiplo:

INSERT INTO destino [(campo1[, campo2[, ...]])] [IN bancodedadosexterno]
SELECT [origem.]campo1[, campo2[, ...]
FROM expressãodetabela

Consulta acréscimo de registro único:

INSERT INTO destino [(campo1[, campo2[, ...]])]
VALUES (valor1[, valor2[, ...])

A instrução INSERT INTO possui as seguintes partes:

Parte Descrição
destino O nome da tabela ou da consulta à qual os registros serão acrescentados.
campo1, campo2 Os nomes dos campos aos quais os dados serão acrescentados, se estiver após um argumento destino, ou os nomes de campos nos quais os dados serão obtidos, se estiver após um argumento origem.
bancodedadosexterno O caminho de um banco de dados externo (banco de dados externo: a origem da tabela a ser vinculada ao banco de dados atual ou para ele importada, ou o destino de uma tabela a ser exportada.). Para uma descrição do caminho, consulte a cláusula IN.
origem O nome da tabela ou da consulta a partir da qual os registros serão copiados.
expressãodetabela O nome da tabela ou das tabelas a partir das quais os registros serão inseridos. Esse argumento pode ser um nome de tabela simples ou um composto resultante de uma operação INNER JOIN, LEFT JOIN ou RIGHT JOIN, ou uma consulta salva.
valor1, valor2 Os valores a serem inseridos nos campos específicos do novo registro. Cada valor é inserido no campo que corresponde à posição do valor na lista: valor1 é inserido em campo1 do novo registro, valor2 em campo2 e assim por diante. Separe os valores por vírgula e coloque campos de texto entre aspas (' ').
Comentários

Você pode usar a instrução INSERT INTO para adicionar um registro único a uma tabela usando a sintaxe de consulta acréscimo de único registro como mostrado acima. Nesse caso, o código especifica o nome e o valor de cada campo do registro. É necessário especificar cada um dos campos do registro ao qual um valor será atribuído e um valor para esse campo. Quando você não especifica cada campo, o valor padrão ou Null (Nulo: um valor que pode ser inserido em um campo ou usado em expressões e consultas para indicar dados ausentes ou desconhecidos. No Visual Basic, a palavra-chave Nulo indica um valor Nulo. Alguns campos, como campos de chave primária, não podem conter um valor Nulo.) é inserido nas colunas ausentes. Os registros são adicionados no final da tabela.

Você também pode usar INSERT INTO para acrescentar um conjunto de registros de outra tabela ou consulta usando a cláusula SELECT ... FROM, como mostrado acima na sintaxe de consulta acréscimo de registro múltiplo. Nesse caso, a cláusula SELECT especifica os campos a serem acrescentados à tabela destino especificada.

A tabela de origem ou de destino pode especificar uma tabela ou uma consulta. Se uma consulta for especificada, o mecanismo de banco de dados do Microsoft Access acrescentará registros a toda e qualquer tabela especificada pela consulta.

INSERT INTO é opcional, mas quando incluída, precede a instrução SELECT.

Se a tabela de destino contiver uma chave primária (chave primária: um ou mais campos (colunas) cujos valores identificam exclusivamente cada registro em uma tabela. A chave primária não pode permitir valores Nulo e sempre deve ter um índice exclusivo. É usada para relacionar uma tabela a chaves estrangeiras em outras tabelas.), verifique se você acrescentou valores exclusivos, que não sejam Null, ao campo ou aos campos da chave primária; caso contrário, o mecanismo de banco de dados do Microsoft Access não acrescentará os registros.

Se você acrescentar registros a uma tabela com um campo AutoNumber (tipo de dados Numeração Automática: em um banco de dados do Microsoft Access, um tipo de dados de campo que armazena automaticamente um número exclusivo para cada registro quando este é adicionado a uma tabela. Três tipos de número podem ser gerados: sequencial, aleatório e código de replicação.) e quiser renumerar os registros acrescentados, não inclua o campo AutoNumber na consulta. Inclua o campo AutoNumber na consulta se desejar manter os valores originais do campo.

Use a cláusula IN para acrescentar registros a uma tabela de outro banco de dados.

Para criar uma nova tabela, use a instrução SELECT... INTO em vez de criar uma consulta criar tabela (consulta criar tabela: uma consulta (instrução SQL) que cria uma nova tabela e, em seguida, cria registros (linhas) nessa tabela por meio da cópia de registros de outra tabela existente.).

Para descobrir quais registros serão acrescentados antes de executar a consulta acréscimo, execute e exiba os resultados de uma consulta seleção (consulta seleção: uma consulta que faz uma pergunta sobre os dados armazenados nas tabelas e retorna um conjunto de resultados no formulário de uma folha de dados, sem alterar os dados.) que utilize os mesmo critérios de seleção.

Uma consulta acréscimo copia registros de uma ou mais tabelas para outra. As tabelas que contêm os registros acrescentados não são afetadas pela consulta acréscimo.

Em vez de acrescentar registros existentes de outra tabela, você pode especificar o valor de cada campo em um único registro novo usando a cláusula VALUES. Se você omitir a lista de campos, a cláusula VALUES deverá incluir um valor para cada campo da tabela; caso contrário, haverá falha na operação INSERT. Use uma instrução INSERT INTO adicional com uma cláusula VALUES para cada registro adicional que quiser criar.

 
 
Aplica-se a:
Access 2007