PostgreSQL INSERT : Insérer des données dans une table
PostgreSQL Instruction INSERT
In PostgreSQL, l'instruction insert permet d'insérer une nouvelle ligne ou une nouvelle ligne dans le tableau. Vous pouvez insérer des lignes spécifiées par des expressions de valeur, zéro ou plusieurs lignes résultant de la requête.
Syntaxe de PostgreSQL INSÉRER DANS
INSERT INTO TABLE_NAME (column1, column2, ...columnN) VALUES (value1, value2,...valueN);
Vous pouvez voir dans la syntaxe ci-dessus que les colonnes 1 à N sont les noms des colonnes du tableau dans lesquelles vous souhaitez insérer des données. La colonne cible doit être répertoriée dans un ordre spécifique. Les valeurs fournies par la clause query ou values sont soit les valeurs correspondantes pour les colonnes.
Une fois la requête exécutée, vous pouvez voir le message de sortie.
Insert oid 1
Ce message de sortie s'affichera si une seule ligne est insérée, oid est l'OID numérique attribué à la ligne insérée.
Exemple de PostgreSQL Insérer dans le tableau
Considérez le tableau suivant, « Tutoriels », avec deux colonnes.
« id » entier Valeur PAR DÉFAUT 1
Texte « nom_tutorial » Valeur PAR DÉFAUT postgre
Et aucune contrainte
Voici les étapes pour PostgreSQL insérer dans le tableau :
Étape 1) Insérer une ligne dans
INSERT INTO tutorials(id, tutorial_name) VALUES (1, 'postgre');
REMARQUE: Seuls les caractères ou les valeurs de date doivent être entourés de guillemets simples lors de l'insertion d'une ligne.
Étape 2) Cependant, si vous insérez des données dans toutes les colonnes, vous pouvez omettre les noms de colonnes. La même instruction d'insertion peut également être écrite comme suit :
INSERT INTO tutorials VALUES (1, 'postgre');
Étape 3) Les valeurs des données sont répertoriées dans l'ordre dans lequel les colonnes apparaissent dans le tableau, séparées par des virgules.
La syntaxe ci-dessus présente un problème : vous devez connaître l'ordre des colonnes dans le tableau. Pour résoudre ce problème, vous pouvez également lister explicitement les colonnes.
Par exemple, les deux commandes ci-dessous ont le même effet que celui affiché ci-dessous :
INSERT INTO tutorials(id, tutorial_name) VALUES (1, 'postgre'); INSERT INTO tutorials(tutorial_name, id) VALUES ('postgre',1);
Étape 4) Dans cet exemple, vous pouvez voir que si vous n’avez pas de valeurs pour toutes les colonnes, vous pouvez en omettre certaines.
Dans ce cas, les colonnes seront automatiquement remplies avec leurs valeurs par défaut si spécifiées.
INSERT INTO tutorials(id) VALUES (5);
Étape 5) Vous pouvez également demander des valeurs par défaut pour des colonnes individuelles ou pour la ligne entière :
INSERT INTO tutorials(id, tutorial_name) VALUES (1, DEFAULT); INSERT INTO tutorials DEFAULT VALUES;
Étape 6) Vous pouvez créer plusieurs lignes avec une seule commande :
INSERT INTO tutorials(id, tutorial_name) VALUES (1, 'postgre'), (2, 'oracle'), (3, 'mysql'), (4, 'mongo');
Étape 7) In PostgreSQL, il s'agit également d'insérer le résultat d'une requête qui peut être sans ligne, une ligne ou plusieurs lignes :
INSERT INTO tutorials (id, tutorial_name) SELECT id, tutorial_name FROM tutorials WHERE tutorial_name = 'mysql';
PostgreSQL Insérer une instruction à l'aide de pgAdmin
Voici les étapes pour insérer une instruction à l'aide de pgAdmin dans Postgre SQL
Étape 1) Dans l'arborescence des objets
- Faites un clic droit sur la table où vous souhaitez insérer des données
- Sélectionnez des scripts
- INSÉRER LE Script
Étape 2) Dans le panneau d'insertion
- Modifier la requête
- Cliquez sur le bouton d'éclairage
- Observez la sortie
Étape 3) Vous pouvez également accéder à Outils > Outils de requête pour ouvrir l'éditeur de requête, mais vous n'obtiendrez pas la requête d'insertion par défaut.
Résumé
Code/Paramètre/Conseil | Description |
---|---|
INSERT INTO TABLE_NAME (colonne1, colonne2,…colonneN) VALEURS (valeur1, valeur2,…valeurN) ; |
Utilisé pour insérer des valeurs dans un tableau |
INSERT INTO tutoriels(id, nom_tutoriel) VALUES (1, 'postgre'); INSERT INTO tutoriels(tutorial_name, id) VALUES ('postgre',1); |
L'ordre des colonnes n'a pas d'importance. Les deux auront le même effet. |
INSERT INTO tutoriels VALUES (1, 'postgre'); | Si vous fournissez des valeurs pour toutes les colonnes, inutile de le préciser |
INSERT INTO tutoriels (id, nom_tutoriel) SELECT id, nom_tutoriel FROM tutoriels OÙ nom_tutoriel = 'mysql'; |
Vous pouvez spécifier une ou plusieurs sous-requêtes référencées par leur nom dans la requête INSERT. |
LES VALEURS PAR DÉFAUT | Utilisation de cette clause pour remplir toutes les colonnes avec leurs valeurs par défaut. |
expression | Une valeur et une expression qui doivent être affectées à la colonne correspondante. |
omeDEFAULT | La clause par défaut est utilisée lorsque la colonne correspondante est remplie avec sa valeur par défaut. |