Resumo :neste tutorial, você aprenderá como usar SQLite
INSERT
instrução para inserir novas linhas em uma tabela. Para inserir dados em uma tabela, você usa o
INSERT
demonstração. SQLite fornece várias formas de INSERT
instruções que permitem inserir uma única linha, várias linhas e valores padrão em uma tabela. Além disso, você pode inserir uma linha em uma tabela usando dados fornecidos por um
SELECT
demonstração. SQLite INSERT
– inserindo uma única linha em uma tabela
Para inserir uma única linha em uma tabela, você usa a seguinte forma do
INSERT
demonstração:INSERT INTO table (column1,column2 ,..)
VALUES( value1, value2 ,...);
Code language: SQL (Structured Query Language) (sql)
Vamos examinar o
INSERT
declaração com mais detalhes:- Primeiro, especifique o nome da tabela na qual você deseja inserir dados após o
INSERT INTO
palavras-chave. - Segundo, adicione uma lista de colunas separadas por vírgulas após o nome da tabela. A lista de colunas é opcional. No entanto, é uma boa prática incluir a lista de colunas após o nome da tabela.
- Terceiro, adicione uma lista de valores separados por vírgulas após
VALUES
palavra-chave. Se você omitir a lista de colunas, deverá especificar valores para todas as colunas na lista de valores. O número de valores na lista de valores deve ser igual ao número de colunas na lista de colunas.
Usaremos os
artists
tabela no banco de dados de exemplo para a demonstração. A instrução a seguir insere uma nova linha no
artists
tabela:INSERT INTO artists (name)
VALUES('Bud Powell');
Code language: SQL (Structured Query Language) (sql)
Tente
Porque o
ArtistId
column é uma coluna de incremento automático, você pode ignorá-la na instrução. SQLite gera automaticamente um número inteiro sequencial para inserir no ArtistId
coluna. Você pode verificar a operação de inserção usando o seguinte
SELECT
demonstração:SELECT
ArtistId,
Name
FROM
Artists
ORDER BY
ArtistId DESC
LIMIT 1;
Code language: SQL (Structured Query Language) (sql)
Tente
Como você vê, temos uma nova linha no
artists
tabela. SQLite INSERT
– Inserindo várias linhas em uma tabela
Para inserir várias linhas em uma tabela, você usa a seguinte forma do
INSERT
demonstração:INSERT INTO table1 (column1,column2 ,..)
VALUES
(value1,value2 ,...),
(value1,value2 ,...),
...
(value1,value2 ,...);
Code language: SQL (Structured Query Language) (sql)
Cada lista de valores seguindo os
VALUES
cláusula é uma linha que será inserida na tabela. O exemplo a seguir insere três linhas em
artists
tabela:INSERT INTO artists (name)
VALUES
("Buddy Rich"),
("Candido"),
("Charlie Byrd");
Code language: SQL (Structured Query Language) (sql)
Tente
SQLite emitiu uma mensagem:
Row Affected: 3
Você pode verificar o resultado usando a seguinte declaração:
SELECT
ArtistId,
Name
FROM
artists
ORDER BY
ArtistId DESC
LIMIT 3;
Code language: SQL (Structured Query Language) (sql)
Tente
SQLite INSERT
– Inserindo valores padrão
Quando você cria uma nova tabela usando o
CREATE TABLE
instrução, você pode especificar valores padrão para colunas ou um NULL
se um valor padrão não for especificado. A terceira forma do
INSERT
instrução é INSERT DEFAULT VALUES
, que insere uma nova linha em uma tabela usando os valores padrão especificados na definição da coluna ou NULL
se o valor padrão não estiver disponível e a coluna não tiver um NOT NULL
limitação. Por exemplo, a instrução a seguir insere uma nova linha no campo
artists
tabela usando INSERT DEFAULT VALUES
:INSERT INTO artists DEFAULT VALUES;
Code language: SQL (Structured Query Language) (sql)
Tente
Para verificar a inserção, você usa a seguinte instrução:
SELECT
ArtistId,
Name
FROM
artists
ORDER BY
ArtistId DESC;
Code language: SQL (Structured Query Language) (sql)
Tente
O valor padrão do
ArtistId
coluna é o próximo inteiro sequencial. No entanto, o name
coluna não tem nenhum valor padrão, portanto, o INSERT DEFAULT VALUES
instrução insere NULL
afim disso. SQLite INSERT
– Inserindo novas linhas com dados fornecidos por um SELECT
declaração
Suponha que você queira fazer backup dos
artists
tabela, você pode seguir estes passos:Primeiro, crie uma nova tabela chamada
artists_backup
do seguinte modo:CREATE TABLE artists_backup(
ArtistId INTEGER PRIMARY KEY AUTOINCREMENT,
Name NVARCHAR
);
Code language: SQL (Structured Query Language) (sql)
Tente
Para inserir dados no
artists_backup
tabela com os dados dos artists
tabela, você usa o INSERT INTO SELECT
declaração da seguinte forma:INSERT INTO artists_backup
SELECT ArtistId, Name
FROM artists;
Code language: SQL (Structured Query Language) (sql)
Tente
Se você consultar dados do
artists_backup
tabela, você verá todos os dados no artists
tabela. SELECT * FROM artists_backup;
Code language: SQL (Structured Query Language) (sql)
Tente
Neste tutorial, você aprendeu como usar várias formas de SQLite
INSERT
instrução que insere novas linhas em uma tabela. Referências
- https://www.sqlite.org/lang_insert.html – Instrução SQLite INSERT