SQLite
 sql >> Base de Dados >  >> RDS >> SQLite

Inserção SQLite


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