| Documentation PostgreSQL 7.2 | ||
|---|---|---|
| <<< Previous | Next >>> | |
INSERT INTO table [ ( column [, ...] ) ]
{ DEFAULT VALUES | VALUES ( expression [, ...] ) | SELECT query }
|
nom d'une table existante.
nom d'une colonne dans table.
Toutes les colonnes seront remplies par des valeurs NULL ou par dess valeurs spécifiées lors de la création de la table en utilisant des clauses DEFAULT.
expression valide ou valeur à assigner à column.
requête valide. Voir la commande SELECT pour plus d'information sur les arguments valides.
INSERT permet d'insérer de nouvelles lignes dans une table. On peut insérer une seule ligne ou plusieurs lignes comme résultat d'une requête. Les colonnes dans la liste cible peuvent être listées dans n'importe quel ordre.
Chaque colonne non présente dans la liste cible sera insérée en utilisant une valeur par défaut, soit une valeur DEFAULT déclarée soit NULL. PostgreSQL rejettera la nouvelle colonne si un NULL est inséré dans une colonne déclarée NOT NULL.
Si l'expression de chaque colonne n'est pas de type correct, la coercition de type automatique sera tentée.
Vous devez avoir les droits d'écriture sur une table afin de la joindre de même vous devez avoir les droits de sélection sur certaines tables spécifiées dans la clause WHERE.
insère une seule ligne dans la table films:
INSERT INTO films VALUES
('UA502','Bananas',105,'1971-07-13','Comedy',INTERVAL '82 minute');
|
dans le second exemple la colonne len est omise et désormais aura la valeur NULL :
INSERT INTO films (code, title, did, date_prod, kind)
VALUES ('T_601', 'Yojimbo', 106, DATE '1961-06-16', 'Drama');
|
insère une seule ligne dans la table distributors; notez que seule la colonne name est spécifiée, ainsi la colonne omise did se verra assigner la valeur par défaut de celle-ci :
INSERT INTO distributors (name) VALUES ('British Lion');
|
insère plusieurs lignes dans la table films depuis la table tmp:
INSERT INTO films SELECT * FROM tmp; |
Insertion dans des tableaux (voir le Guide de l'utilisateur PostgreSQL pour plus d'information sur les tableaux) :
-- Create an empty 3x3 gameboard for noughts-and-crosses
-- (all of these queries create the same board attribute)
INSERT INTO tictactoe (game, board[1:3][1:3])
VALUES (1,'{{"","",""},{},{"",""}}');
INSERT INTO tictactoe (game, board[3][3])
VALUES (2,'{}');
INSERT INTO tictactoe (game, board)
VALUES (3,'{{,,},{,,},{,,}}');
|
INSERT est pleinement compatible avec le SQL92. De possibles limitations dans les fonctionnalités de la clause query sont documentées pour SELECT.
| <<< Previous | Home | Next >>> |
| GRANT | Up | LISTEN |