Resumo: neste tutorial, você aprenderá como usar a instrução SQL INSERT para inserir dados em tabelas.
A instrução INSERT
insere uma ou mais linhas em uma tabela. A instrução INSERT
às vezes é chamada de instrução INSERT INTO
.
Instrução SQL INSERT – insira uma linha em um tabela
O seguinte ilustra a instrução INSERT
que insere uma única linha em uma tabela existente.
1
2
|
INSERT INTO tabela (coluna1, coluna2, …)
VALORES (valor1, valor2, …);
|
Para inserir uma linha em uma tabela, você precisa especifique três coisas:
- Primeiro, a tabela, na qual você deseja inserir uma nova linha, na cláusula
INSERT INTO
. - Em segundo lugar, uma lista de colunas separadas por vírgulas na tabela entre parênteses.
- Terceiro, uma lista de valores separados por vírgulas entre parênteses no
VALUES
cláusula.
A lista de colunas deve ter o mesmo número de elementos que a lista de valores, ou o mecanismo de banco de dados emitirá um erro.
Vamos dar uma olhada na seguinte shippers
tabela:
A seguinte INSERT
insere uma nova linha na tabela shippers
:
1
2
|
INSERT INTO transportadores (nome da empresa, telefone)
VALUES (“Alliance Shippers”, “1-800-222-0451”);
|
Duas constantes, "Alliance Shippers"
e "1-800-222-0451"
são especificados na cláusula VALUES
. O mecanismo de banco de dados os inseriu nas colunas companyname
e phone
respectivamente.
Depois de executar a instrução, o servidor de banco de dados retorna uma mensagem para indicar o número de linhas afetadas. Neste caso, obtemos a mensagem “1 linha afetada” informando que uma nova linha foi inserida com sucesso.
Observe que não especificamos o shipperID
coluna na lista de colunas porque a coluna shipperID
é uma coluna AUTO INCREMENT
, o mecanismo de banco de dados gera a próxima sequência para ela automaticamente sempre que uma nova linha é inserido na tabela.
Para ajudá-lo a escrever menos código, o SQL fornece uma forma mais curta da instrução INSERT
como segue:
1
2
|
INSERT INTO table
VALUES (value1, value2, …)
|
Neste formulário, a lista de valores deve ter a mesma ordem que a lista de colunas na tabela. Se você usar este formato do , você deve fornecer valores para todas as colunas, exceto a coluna AUTO INCREMENT
.
É uma boa prática usar os nomes das colunas no INSERT
instrução para tornar o código mais fácil de manter.
A seguinte instrução INSERT
tem o mesmo efeito que aquela acima:
1
2
|
INSERIR NOS remetentes
VALORES (” Transportadores da Aliança “,” 1-800-222-0451 “);
|
Instrução SQL INSERT – inserir várias linhas em uma tabela
A instrução INSERT
também permite inserir várias linhas em uma tabela usando uma única instrução como a seguir:
1
2
3
4
|
INSERT INTO nome_tabela (coluna1, coluna2…)
VALORES (valor1, valor2,…),
(valor1, valor2,…) ,
…
|
Neste formulário, você precisa fornecer várias listas de valores, cada lista é separada por uma vírgula.
A seguinte instrução INSERT
insere duas linhas na shippers
tabela:
1
2
3
|
INSERT INTO shippers (companyName, phone)
VALUES (“UPS”, “1-800-782-7892”),
(“DHL”, “1-800-225-5345”)
|
SQL Instrução INSERT – copiar dados da tabela
Em vez de especificar uma lista de valores, você pode usar uma instrução SELECT para selecionar valores de outra tabela e fornecê-los ao INSERT
demonstração. Isso permite que você copie dados de uma tabela para outra.
A instrução a seguir ilustra como copiar dados de another_table
para table
:
1
2
3
4
5
6
7
|
INSERT INTO tabela (coluna1, coluna2, …)
SELECIONAR
coluna1, coluna2, …
DE
outra_tabela
ONDE
condição
|
A lista de colunas na cláusula SELECT
deve corresponder à lista de colunas na INSERT INTO
cláusula. Se você deseja copiar apenas dados parciais, você precisa especificar uma condição na cláusula WHERE.
Suponha que você tenha uma tabela temporária chamada shippers_tmp
que tem o mesmo estrutura como a tabela shippers
. Para copiar dados da tabela shippers
para a tabela shippers_tmp
, use a seguinte instrução:
1
2
3
4
5
|
INSERT INTO shippers_tmp (shipperid, name, phone)
SELECT
shipperid, companyName, telefone
DE
expedidores
|
Neste tutorial, você aprendeu como usar a instrução INSERT
para inserir uma ou mais linhas em uma tabela. Além disso, você também aprendeu como copiar os dados de uma tabela para outra usando a instrução INSERT SELECT INTO
.
- Foi este tutorial útil?
- Sim Não