Résumé :dans ce tutoriel, vous apprendrez à utiliser SQLite INSERT
instruction pour insérer de nouvelles lignes dans une table.
Pour insérer des données dans une table, vous utilisez le INSERT
déclaration. SQLite fournit différentes formes de INSERT
instructions qui vous permettent d'insérer une seule ligne, plusieurs lignes et des valeurs par défaut dans une table.
De plus, vous pouvez insérer une ligne dans un tableau en utilisant les données fournies par un SELECT
déclaration.
SQLite INSERT
– insérer une seule ligne dans un tableau
Pour insérer une seule ligne dans un tableau, vous utilisez la forme suivante du INSERT
déclaration :
INSERT INTO table (column1,column2 ,..)
VALUES( value1, value2 ,...);
Code language: SQL (Structured Query Language) (sql)
Examinons le INSERT
déclaration plus en détail :
- Tout d'abord, spécifiez le nom de la table dans laquelle vous souhaitez insérer des données après le
INSERT INTO
mots-clés. - Deuxièmement, ajoutez une liste de colonnes séparées par des virgules après le nom de la table. La liste des colonnes est facultative. Cependant, il est recommandé d'inclure la liste des colonnes après le nom de la table.
- Troisièmement, ajoutez une liste de valeurs séparées par des virgules après le
VALUES
mot-clé. Si vous omettez la liste de colonnes, vous devez spécifier des valeurs pour toutes les colonnes de la liste de valeurs. Le nombre de valeurs dans la liste de valeurs doit être le même que le nombre de colonnes dans la liste de colonnes.
Nous utiliserons les artists
table dans l'exemple de base de données pour la démonstration.
La déclaration suivante insère une nouvelle ligne dans les artists
tableau :
INSERT INTO artists (name)
VALUES('Bud Powell');
Code language: SQL (Structured Query Language) (sql)
Essayez-le
Parce que le ArtistId
colonne est une colonne à incrémentation automatique, vous pouvez l'ignorer dans l'instruction. SQLite génère automatiquement un nombre entier séquentiel à insérer dans le ArtistId
colonne.
Vous pouvez vérifier l'opération d'insertion en utilisant le SELECT
suivant déclaration :
SELECT
ArtistId,
Name
FROM
Artists
ORDER BY
ArtistId DESC
LIMIT 1;
Code language: SQL (Structured Query Language) (sql)
Essayez-le
Comme vous le voyez, nous avons une nouvelle ligne dans les artists
tableau.
SQLite INSERT
– Insertion de plusieurs lignes dans un tableau
Pour insérer plusieurs lignes dans un tableau, vous utilisez la forme suivante du INSERT
déclaration :
INSERT INTO table1 (column1,column2 ,..)
VALUES
(value1,value2 ,...),
(value1,value2 ,...),
...
(value1,value2 ,...);
Code language: SQL (Structured Query Language) (sql)
Chaque liste de valeurs suivant les VALUES
clause est une ligne qui sera insérée dans la table.
L'exemple suivant insère trois lignes dans les artists
tableau :
INSERT INTO artists (name)
VALUES
("Buddy Rich"),
("Candido"),
("Charlie Byrd");
Code language: SQL (Structured Query Language) (sql)
Essayez-le
SQLite a émis un message :
Row Affected: 3
Vous pouvez vérifier le résultat à l'aide de la déclaration suivante :
SELECT
ArtistId,
Name
FROM
artists
ORDER BY
ArtistId DESC
LIMIT 3;
Code language: SQL (Structured Query Language) (sql)
Essayez-le
SQLite INSERT
– Insertion des valeurs par défaut
Lorsque vous créez une nouvelle table à l'aide de CREATE TABLE
instruction, vous pouvez spécifier des valeurs par défaut pour les colonnes, ou un NULL
si une valeur par défaut n'est pas spécifiée.
La troisième forme du INSERT
l'instruction est INSERT DEFAULT VALUES
, qui insère une nouvelle ligne dans une table en utilisant les valeurs par défaut spécifiées dans la définition de colonne ou NULL
si la valeur par défaut n'est pas disponible et que la colonne n'a pas de NOT NULL
contrainte.
Par exemple, l'instruction suivante insère une nouvelle ligne dans les artists
table en utilisant INSERT DEFAULT VALUES
:
INSERT INTO artists DEFAULT VALUES;
Code language: SQL (Structured Query Language) (sql)
Essayez-le
Pour vérifier l'insertion, vous utilisez l'instruction suivante :
SELECT
ArtistId,
Name
FROM
artists
ORDER BY
ArtistId DESC;
Code language: SQL (Structured Query Language) (sql)
Essayez-le
La valeur par défaut de ArtistId
colonne est le prochain entier séquentiel . Cependant, le name
la colonne n'a pas de valeur par défaut, par conséquent, le INSERT DEFAULT VALUES
instruction insère NULL
dedans.
SQLite INSERT
– Insertion de nouvelles lignes avec les données fournies par un SELECT
déclaration
Supposons que vous souhaitiez sauvegarder les artists
tableau, vous pouvez suivre ces étapes :
Tout d'abord, créez une nouvelle table nommée artists_backup
comme suit :
CREATE TABLE artists_backup(
ArtistId INTEGER PRIMARY KEY AUTOINCREMENT,
Name NVARCHAR
);
Code language: SQL (Structured Query Language) (sql)
Essayez-le
Pour insérer des données dans le artists_backup
table avec les données des artists
table, vous utilisez le INSERT INTO SELECT
déclaration comme suit :
INSERT INTO artists_backup
SELECT ArtistId, Name
FROM artists;
Code language: SQL (Structured Query Language) (sql)
Essayez-le
Si vous interrogez les données de artists_backup
tableau, vous verrez toutes les données dans le artists
tableau.
SELECT * FROM artists_backup;
Code language: SQL (Structured Query Language) (sql)
Essayez-le
Dans ce tutoriel, vous avez appris à utiliser différentes formes de SQLite INSERT
instruction qui insère de nouvelles lignes dans une table.
Références
- https://www.sqlite.org/lang_insert.html – Instruction SQLite INSERT