L'instruction INSERT INTO en SQL est utilisée pour ajouter de nouveaux enregistrements à une table d'une base de données. Il s'agit d'une commande fondamentale pour l'insertion de données et est utilisée pour insérer de nouvelles données dans des tableaux.
Syntaxe
Il existe deux syntaxes d'instructions INSERT INTO en fonction des exigences. Les deux syntaxes sont :
1. Uniquement des valeurs
La première méthode consiste à spécifier uniquement la valeur des données à insérer sans les noms de colonnes.
INSERT INTO nom_table
VALEURS (valeur1, valeur2, valeur) ;
Ici,
- nom de la table: nom du tableau.
- valeur1, valeur2 : valeur de la première colonne, de la deuxième colonne,… pour le nouvel enregistrement
2. Noms et valeurs des colonnes
Dans la deuxième méthode, nous spécifierons à la fois les colonnes que nous voulons remplir et leurs valeurs correspondantes comme indiqué ci-dessous :
INSÉRER DANS nom_table (colonne1, colonne2, colonne3)
VALEURS ( valeur1, valeur2, valeur);
Ici,
- nom de la table: nom du tableau.
- colonne1, colonne2.. : nom de la première colonne, deuxième colonne.
- valeur1, valeur2, valeur.. : valeur de la première colonne, de la deuxième colonne,… pour le nouvel enregistrement
SQL INSÉRER DANS Exemples
Examinons quelques exemples d'instruction INSERT INTO en SQL pour mieux la comprendre.
Supposons qu’il existe une base de données Student et que nous souhaitons ajouter des valeurs.
constructeur python
| ROLL_NO | NOM | ADRESSE | TÉLÉPHONE | ÂGE |
|---|---|---|---|---|
| 1 | RAM | Delhi | xxxxxxxxxxxx | 18 |
| 2 | RAMÈS | GURGAON | xxxxxxxxxxxx | 18 |
| 3 | SUJIT | ROHTAK | xxxxxxxxxxxx | vingt |
| 4 | SURESH | ROHTAK | xxxxxxxxxxxx | 18 |
| 3 | SUJIT | ROHTAK | xxxxxxxxxxxx | vingt |
| 2 | RAMÈS | GURGAON | xxxxxxxxxxxx | 18 |
Insertion uniquement de nouvelles valeurs à l'aide de l'exemple INSERT INTO
Si nous voulons insérer uniquement des valeurs, nous utilisons la requête suivante :
méthode de sous-chaîne Java
Requête:
INSERT INTO Student VALUES ('5','HARSH','WEST BENGAL', 'XXXXXXXXXX','19');> Sortir:
La table Étudiant ressemblera maintenant à ceci :
| ROLL_NO | NOM | ADRESSE | TÉLÉPHONE | Âge |
|---|---|---|---|---|
| 1 | RAM | Delhi | XXXXXXXXX | 18 |
| 2 | RAMÈS | GURGAON | XXXXXXXXX | 18 |
| 3 | SUJIT | ROHTAK | XXXXXXXXX | vingt |
| 4 | SURESH | Delhi | XXXXXXXXX | 18 |
| 3 | SUJIT | ROHTAK | XXXXXXXXX | vingt |
| 2 | RAMÈS | GURGAON | XXXXXXXXX | 18 |
| 5 | RUDE | BENGALE-OCCIDENTAL | XXXXXXXXX | 19 |
Insérer des valeurs dans les colonnes spécifiées à l'aide de l'exemple INSERT INTO
Si nous voulons insérer des valeurs dans les colonnes spécifiées, nous utilisons la requête suivante :
Requête:
INSERT INTO Student (ROLL_NO, NAME, Age) VALUES ('5','PRATIK','19');> Sortir:
La table Étudiant ressemblera maintenant à ceci :
| ROLL_NO | NOM | ADRESSE | TÉLÉPHONE | Âge |
|---|---|---|---|---|
| 1 | RAM | Delhi | XXXXXXXXX | 18 |
| 2 | RAMÈS | GURGAON | XXXXXXXXX | 18 |
| 3 | SUJIT | ROHTAK | XXXXXXXXX | vingt |
| 4 | SURESH | Delhi | XXXXXXXXX | 18 |
| 3 | SUJIT | ROHTAK | XXXXXXXXX | vingt |
| 2 | RAMÈS | GURGAON | XXXXXXXXX | 18 |
| 5 | PRATIQUE | nul | nul | 19 |
Notez que les colonnes pour lesquelles les valeurs ne sont pas fournies sont remplies par null. Quelles sont les valeurs par défaut de ces colonnes ?
Insérer plusieurs lignes dans une table à l'aide d'une seule instruction SQL
Vous pouvez utiliser la technique donnée pour insérer plusieurs lignes dans une table en une seule requête. Cela permet de gagner du temps lors de l'écriture des requêtes et de réduire l'erreur de marge.
Syntaxe:
INSERT INTO nom_table (Colonne1, Colonne2, Colonne3,…….)
VALEURS (Valeur1, Valeur2,Valeur3,…..),
(Valeur1, Valeur2,Valeur3,…..),
(Valeur1, Valeur2,Valeur3,…..),
……………………….. ;point java
Où,
- nom de la table: nom du tableau.
Colonne 1 : nom de la première colonne, deuxième colonne. - Valeurs: Value1, Value2, Value3 : la valeur de la première colonne, deuxième colonne.
- Pour chaque nouvelle ligne insérée, vous devez fournir plusieurs listes de valeurs où chaque liste est séparée par ,. Chaque liste de valeurs correspond à des valeurs à insérer dans chaque nouvelle ligne du tableau. Les valeurs de la liste suivante indiquent les valeurs à insérer dans la ligne suivante du tableau.
Insérez plusieurs lignes dans une table à l'aide d'un exemple d'instruction SQL unique :
L'instruction SQL suivante insère plusieurs lignes dans Student Table.
Requête:
INSERT INTO STUDENT (ID, NAME,AGE,GRADE,CITY) VALUES (1,'AMIT KUMAR',15,10,'DELHI'), (2,'GAURI RAO',18,12,'BANGALORE'), (3,'MANAV BHATT',17,11,'NEW DELHI'), (4,'RIYA KAPOOR',10,5,'UDAIPUR');>
Sortir:
Ainsi, la table ÉTUDIANT ressemblera à ceci :
| IDENTIFIANT | NOM | ÂGE | GRADE | VILLE |
|---|---|---|---|---|
| 1 | AMIT KUMAR | quinze | dix | DELHI |
| 2 | GAURI RAO | 18 | 12 | BANGALORE |
| 3 | MANAV BHATT | 17 | onze | NEW DELHI |
| 4 | RIYA KAPOOOR | dix | 5 | UDAIPUR |
S QL INSÉRER DANS SELECT
Le SQL INSÉRER DANS SELECT L'instruction est utilisée pour copier les données d'une table et les insérer dans une autre table. L'utilisation de cette instruction est similaire à celle de l'instruction INSERT INTO. La différence est que le Instruction SELECT est utilisé ici pour sélectionner des données dans une table différente. Les différentes manières d'utiliser l'instruction INSERT INTO SELECT sont présentées ci-dessous :
INSÉRER DANS SÉLECTIONNER Syntaxe
Il existe deux syntaxes pour utiliser l'instruction INSERT INTO SELECT, en fonction de son utilisation.
Copier toutes les colonnes et insérer
La syntaxe d'utilisation de la requête INSERT INTO SELECT pour insérer toutes les données d'une table dans une autre table :
INSERT INTO first_table SELECT * FROM second_table;
Ici,
- première_table : nom de la première table.
- seconde_table : nom de la deuxième table.
Nous avons utilisé l'instruction SELECT pour copier les données d'une table et l'instruction INSERT INTO pour les insérer à partir d'une autre table.
Copier des colonnes spécifiques et insérer
La syntaxe d'utilisation de la requête INSERT INTO SELECT pour insérer des données spécifiques d'une table dans une autre table :
INSERT INTO first_table(names_of_columns1)
SELECT noms_de_colonnes2 FROM seconde_table ;
Ici,
exemple java bonjour le monde
- première_table : nom de la première table. second_table : nom de la deuxième table.
- noms des colonnes1 : nom des colonnes séparées par une virgule(,) pour le tableau 1.
- noms des colonnes2 : nom des colonnes séparées par une virgule(,) pour le tableau 2.
Nous avons utilisé l'instruction SELECT pour copier les données des colonnes sélectionnées uniquement à partir de la deuxième table et l'instruction INSERT INTO pour les insérer dans la première table.
C copier des lignes spécifiques et insérer
Nous pouvons copier des lignes spécifiques d'une table pour les insérer dans une autre table en utilisant la clause WHERE avec l'instruction SELECT. Nous devons fournir des conditions appropriées dans la clause WHERE pour sélectionner des lignes spécifiques.
La syntaxe d'utilisation de la requête INSERT INTO SELECT pour insérer des lignes spécifiques de la table
INSERT INTO table1 SELECT * FROM table2 WHERE condition ;
Ici,
- première_table : nom de la première table.
- seconde_table : nom de la deuxième table.
- condition : condition pour sélectionner des lignes spécifiques.
SQL INSERT INTO SELECT Exemples
Examinons quelques exemples d'instruction INSERT INTO SELECT pour mieux la comprendre.
Supposons qu’il existe une base de données LateralStudent.
| ROLL_NO | NOM | ADRESSE | TÉLÉPHONE | Âge |
|---|---|---|---|---|
| 7 | SOUVIK | HYDÉRABAD | XXXXXXXXX | 18 |
| 8 | NIRAJ | NOIDA | XXXXXXXXX | 19 |
| 9 | QUELQUE CHOSE | ROHTAK | XXXXXXXXX | vingt |
Insertion de toutes les lignes et colonnes à l'aide de l'exemple INSERT INTO SELECT
Si nous voulons insérer uniquement des valeurs, nous utilisons la requête suivante :
Requête:
INSERT INTO Student SELECT * FROM LateralStudent;>
Sortir:
Cette requête insérera toutes les données de la table LateralStudent dans la table Student. Le tableau Student ressemblera désormais à ceci,
| ROLL_NO | NOM | ADRESSE | TÉLÉPHONE | Âge |
|---|---|---|---|---|
| 1 | RAM | Delhi | XXXXXXXXX | 18 |
| 2 | RAMÈS | GURGAON | XXXXXXXXX | 18 |
| 3 | SUJIT | ROHTAK | XXXXXXXXX | vingt |
| 4 | SURESH | Delhi | XXXXXXXXX | 18 |
| 3 | SUJIT | ROHTAK | XXXXXXXXX | vingt |
| 2 | RAMÈS | GURGAON | XXXXXXXXX | 18 |
| 7 | SOUVIK | DUMBUM | XXXXXXXXX | 18 |
| 8 | NIRAJ | NOIDA | XXXXXXXXX | 19 |
| 9 | QUELQUE CHOSE | ROHTAK | XXXXXXXXX | vingt |
Insertion de colonnes spécifiques à l'aide de l'exemple INSERT INTO SELECT
Si nous voulons insérer des valeurs dans les colonnes spécifiées, nous utilisons la requête suivante :
c structure dans structure
Requête:
INSERT INTO Student(ROLL_NO,NAME,Age) SELECT ROLL_NO, NAME, Age FROM LateralStudent;>
Sortir:
Cette requête insérera les données dans les colonnes ROLL_NO, NAME et Age de la table LateralStudent dans la table Student et les colonnes restantes de la table Student seront remplies par nul qui est la valeur par défaut des colonnes restantes. Le tableau Student ressemblera désormais à ceci,
| ROLL_NO | NOM | ADRESSE | TÉLÉPHONE | Âge |
|---|---|---|---|---|
| 1 | RAM | Delhi | XXXXXXXXX | 18 |
| 2 | RAMÈS | GURGAON | XXXXXXXXX | 18 |
| 3 | SUJIT | ROHTAK | XXXXXXXXX | vingt |
| 4 | SURESH | Delhi | XXXXXXXXX | 18 |
| 3 | SUJIT | ROHTAK | XXXXXXXXX | vingt |
| 2 | RAMÈS | GURGAON | XXXXXXXXX | 18 |
| 7 | SOUVIK | nul | nul | 18 |
| 8 | NIRAJ | nul | nul | 19 |
| 9 | QUELQUE CHOSE | nul | nul | vingt |
Insérez des lignes spécifiques à l'aide de l'exemple INSERT INTO SELECT :
INSERT INTO Student SELECT * FROM LateralStudent WHERE Age = 18;>
Sortir:
Cette requête sélectionnera uniquement la première ligne de la table LateralStudent à insérer dans la table Student. Le tableau Student ressemblera désormais à ceci,
| ROLL_NO | NOM | ADRESSE | TÉLÉPHONE | Âge |
|---|---|---|---|---|
| 1 | RAM | Delhi | XXXXXXXXX | 18 |
| 2 | RAMÈS | GURGAON | XXXXXXXXX | 18 |
| 3 | SUJIT | ROHTAK | XXXXXXXXX | vingt |
| 4 | SURESH | Delhi | XXXXXXXXX | 18 |
| 3 | SUJIT | ROHTAK | XXXXXXXXX | vingt |
| 2 | RAMÈS | GURGAON | XXXXXXXXX | 18 |
| 7 | SOUVIK | DUMBUM | XXXXXXXXX | 18 |
Points importants concernant l'instruction SQL INSERT INTO
- L'instruction INSERT INTO est utilisée pour ajouter de nouveaux enregistrements à une table dans une base de données
- Il permet d'insérer plusieurs enregistrements dans une seule instruction en fournissant plusieurs ensembles de valeurs.
- Si vous ne spécifiez pas les noms des colonnes, l'instruction suppose que toutes les colonnes et les valeurs doivent être dans le même ordre que la définition de la table.
- Les colonnes non incluses dans l'instruction INSERT seront remplies avec des valeurs par défaut, qui sont généralement NULL.
- conditions des déclarations.