Instruction INSERT de SQLite

L'instructionINSERT INTOde SQLite est utilisée pour ajouter de nouvelles lignes de données à une table dans la base de données.

Syntaxe

L'instruction INSERT INTO possède deux syntaxes de base, comme suit :

INSERT INTO TABLE_NAME [(column1, column2, column3,...columnN)]  
VALUES (value1, value2, value3,...valueN);

Ici, column1, column2,...columnN sont les noms des colonnes de la table dans laquelle vous souhaitez insérer des données.

Si vous souhaitez ajouter des valeurs pour toutes les colonnes de la table, vous n'avez pas besoin de spécifier les noms des colonnes dans la requête SQLite. Toutefois, assurez-vous que l'ordre des valeurs est le même que l'ordre des colonnes de la table. La syntaxe INSERT INTO de SQLite est la suivante :

INSERT INTO TABLE_NAME VALUES (value1,value2,value3,...valueN);

Exemples

Supposons que vous ayez créé la table COMPANY dans testDB.db comme suit :

sqlite> CREATE TABLE COMPANY(
   ID INT PRIMARY KEY     NOT NULL,
   NAME           TEXT    NOT NULL,
   AGE            INT     NOT NULL,
   ADDRESS        CHAR(50),
   SALARY         REAL
);

Maintenant, les instructions suivantes créeront six enregistrements dans la table COMPANY :

INSERT INTO COMPANY (ID,NAME,AGE,ADDRESS,SALARY)
VALUES (1, 'Paul', 32, 'California', 20000.00 );

INSERT INTO COMPANY (ID,NAME,AGE,ADDRESS,SALARY)
VALUES (2, 'Allen', 25, 'Texas', 15000.00 );

INSERT INTO COMPANY (ID,NAME,AGE,ADDRESS,SALARY)
VALUES (3, 'Teddy', 23, 'Norway', 20000.00 );

INSERT INTO COMPANY (ID,NAME,AGE,ADDRESS,SALARY)
VALUES (4, 'Mark', 25, 'Rich-Mond ', 65000.00 );

INSERT INTO COMPANY (ID,NAME,AGE,ADDRESS,SALARY)
VALUES (5, 'David', 27, 'Texas', 85000.00 );

INSERT INTO COMPANY (ID,NAME,AGE,ADDRESS,SALARY)
VALUES (6, 'Kim', 22, 'South-Hall', 45000.00 );

Vous pouvez également utiliser la deuxième syntaxe pour créer un enregistrement dans la table COMPANY, comme indiqué ci-dessous :

INSERT INTO COMPANY VALUES (7, 'James', 24, 'Houston', 10000.00 );

Toutes les instructions ci-dessus créeront les enregistrements suivants dans la table COMPANY. Le chapitre suivant vous apprendra comment afficher tous ces enregistrements à partir d'une table.

ID          NAME        AGE         ADDRESS     SALARY
----------  ----------  ----------  ----------  ----------
1           Paul        32          California  20000.0
2           Allen       25          Texas       15000.0
3           Teddy       23          Norway      20000.0
4           Mark        25          Rich-Mond   65000.0
5           David       27          Texas       85000.0
6           Kim         22          South-Hall  45000.0
7           James       24          Houston     10000.0

Utiliser une table pour remplir une autre table

Vous pouvez remplir une autre table avec des données en utilisant une instruction SELECT sur une table comportant un ensemble de champs. La syntaxe est la suivante :

INSERT INTO first_table_name [(column1, column2, ... columnN)] 
   SELECT column1, column2, ...columnN 
   FROM second_table_name
   [WHERE condition];

Vous pouvez ignorer les instructions ci-dessus pour l'instant et d'abord apprendre les clauses SELECT et WHERE présentées dans les chapitres suivants.

Autres extensions