Adiciona um registro ou vários registros a uma tabela. Isto é conhecido como consulta de acréscimo.
Sintaxe
Consulta acréscimo de vários registros:
INSERT INTO destino [(campo1[, campo2[, ...]])] [IN base de dados externa]
SELECIONE [fonte.]campo1[, campo2[, ...]
FROM expressãodetabela
Consulta acréscimo de registro único:
INSERT INTO destino [(campo1[, campo2[, ...]])]
VALORES (valor1[, valor2[, ...])
A instrução INSERT INTO tem as seguintes partes:
| Parte | Descrição |
|---|---|
| target | O nome da tabela ou consulta à qual acrescentar os registros. |
| campo1, campo2 | Nomes dos campos aos quais acrescentar dados se seguir um argumento target, ou os nomes dos campos dos quais obter dados se seguir um argumento source. |
| externaldatabase | O caminho para uma base de dados externa. Para obter uma descrição do caminho, confira a cláusula IN. |
| source | O nome da tabela ou consulta da qual copiar os registros. |
| expressãodetabela | O nome da tabela ou tabelas das quais os registros sã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. |
| value1, value2 | 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: value1 é inserido no campo1 do novo registro, value2 no campo2, e assim por diante. Separe os valores com uma vírgula e coloque os 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 registro único como mostrado acima. Nesse caso, o código especifica o nome e o valor para cada campo do registro. Você deve especificar cada um dos campos do registro ao qual um valor deve ser atribuído e um valor para esse campo. Se você não especificar cada campo, o valor padrão ou Null será inserido para as colunas ausentes. Os registros são adicionados ao 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 vários registros. Nesse caso, a cláusula SELECT especifica os campos a serem acrescentados à tabela target especificada.
A tabela source ou target pode especificar uma tabela ou 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 sua tabela de destino tiver uma chave primária, certifique-se de que acrescenta valores únicos e não nulos ao campo ou campos de chave primária; caso contrário, o motor de base de dados do Microsoft Access não irá acrescentar os registos.
Se você acrescentar os registros a uma tabela com um campo Numeração Automática e desejar renumerar os registros acrescentados, não inclua o campo Numeração Automática na sua consulta. Inclua o campo Numeração Automática na consulta se quiser manter os valores originais do campo.
Use a cláusula IN para acrescentar registros a uma tabela em outro banco de dados.
Para criar uma nova tabela, utilize a ferramenta SELECIONAR... em vez de criar uma consulta criar tabela.
Para saber que registos serão acrescentados antes de executar a consulta acrescentar, primeiro execute e veja os resultados de uma consulta selecionar que utilize os mesmos critérios de seleção.
Uma consulta acréscimo copia os registros de uma ou mais tabelas para outra. As tabelas que contenham os registros acrescentados por você não serão afetadas pela consulta acréscimo.
Em vez de acrescentar registos existentes de outra tabela, pode especificar o valor para cada campo num único registo com a cláusula VALUES. Se omitir a lista de campos, a cláusula VALUES tem de incluir um valor para cada campo na tabela; caso contrário, a operação INSERT falhará. Utilize uma instrução INSERT INTO adicional com uma cláusula VALUES para cada registo adicional que pretender criar.