PostgreSQL - Syntaxe
Ce chapitre fournit une liste des commandes SQL PostgreSQL, suivies des règles de syntaxe précises pour chacune de ces commandes. Cet ensemble de commandes provient de l'outil de ligne de commande psql. Maintenant que Postgres est installé, ouvrez le psql comme -
Program Files → PostgreSQL 9.2 → SQL Shell(psql).
À l'aide de psql, vous pouvez générer une liste complète de commandes à l'aide de la commande \ help. Pour la syntaxe d'une commande spécifique, utilisez la commande suivante -
postgres-# \help <command_name>
L'instruction SQL
Une instruction SQL est composée de jetons où chaque jeton peut représenter un mot-clé, un identificateur, un identificateur entre guillemets, une constante ou un symbole de caractère spécial. Le tableau ci-dessous utilise une simple instruction SELECT pour illustrer une instruction SQL basique mais complète et ses composants.
SÉLECTIONNER | identifiant, nom | DE | États | |
---|---|---|---|---|
Type de jeton | Mot-clé | Identifiants | Mot-clé | Identifiant |
La description | Commander | Colonnes d'identifiant et de nom | Clause | Nom de la table |
Commandes SQL PostgreSQL
AVORTER
Abandonnez la transaction en cours.
ABORT [ WORK | TRANSACTION ]
ALTER AGGREGATE
Modifiez la définition d'une fonction d'agrégation.
ALTER AGGREGATE name ( type ) RENAME TO new_name
ALTER AGGREGATE name ( type ) OWNER TO new_owner
MODIFIER LA CONVERSION
Modifiez la définition d'une conversion.
ALTER CONVERSION name RENAME TO new_name
ALTER CONVERSION name OWNER TO new_owner
ALTER DATABASE
Modifiez un paramètre spécifique à la base de données.
ALTER DATABASE name SET parameter { TO | = } { value | DEFAULT }
ALTER DATABASE name RESET parameter
ALTER DATABASE name RENAME TO new_name
ALTER DATABASE name OWNER TO new_owner
ALTER DOMAIN
Modifiez la définition d'un paramètre spécifique au domaine.
ALTER DOMAIN name { SET DEFAULT expression | DROP DEFAULT }
ALTER DOMAIN name { SET | DROP } NOT NULL
ALTER DOMAIN name ADD domain_constraint
ALTER DOMAIN name DROP CONSTRAINT constraint_name [ RESTRICT | CASCADE ]
ALTER DOMAIN name OWNER TO new_owner
FONCTION ALTER
Modifiez la définition d'une fonction.
ALTER FUNCTION name ( [ type [, ...] ] ) RENAME TO new_name
ALTER FUNCTION name ( [ type [, ...] ] ) OWNER TO new_owner
GROUPE ALTER
Changer un groupe d'utilisateurs.
ALTER GROUP groupname ADD USER username [, ... ]
ALTER GROUP groupname DROP USER username [, ... ]
ALTER GROUP groupname RENAME TO new_name
ALTER INDEX
Modifiez la définition d'un index.
ALTER INDEX name OWNER TO new_owner
ALTER INDEX name SET TABLESPACE indexspace_name
ALTER INDEX name RENAME TO new_name
MODIFIER LA LANGUE
Modifiez la définition d'un langage procédural.
ALTER LANGUAGE name RENAME TO new_name
OPÉRATEUR ALTER
Modifiez la définition d'un opérateur.
ALTER OPERATOR name ( { lefttype | NONE }, { righttype | NONE } )
OWNER TO new_owner
CLASSE D'OPÉRATEUR ALTER
Modifiez la définition d'une classe d'opérateur.
ALTER OPERATOR CLASS name USING index_method RENAME TO new_name
ALTER OPERATOR CLASS name USING index_method OWNER TO new_owner
ALTER SCHEMA
Modifiez la définition d'un schéma.
ALTER SCHEMA name RENAME TO new_name
ALTER SCHEMA name OWNER TO new_owner
MODIFIER LA SÉQUENCE
Modifiez la définition d'un générateur de séquence.
ALTER SEQUENCE name [ INCREMENT [ BY ] increment ]
[ MINVALUE minvalue | NO MINVALUE ]
[ MAXVALUE maxvalue | NO MAXVALUE ]
[ RESTART [ WITH ] start ] [ CACHE cache ] [ [ NO ] CYCLE ]
MODIFIER TABLE
Modifiez la définition d'une table.
ALTER TABLE [ ONLY ] name [ * ]
action [, ... ]
ALTER TABLE [ ONLY ] name [ * ]
RENAME [ COLUMN ] column TO new_column
ALTER TABLE name
RENAME TO new_name
Où action est l'une des lignes suivantes -
ADD [ COLUMN ] column_type [ column_constraint [ ... ] ]
DROP [ COLUMN ] column [ RESTRICT | CASCADE ]
ALTER [ COLUMN ] column TYPE type [ USING expression ]
ALTER [ COLUMN ] column SET DEFAULT expression
ALTER [ COLUMN ] column DROP DEFAULT
ALTER [ COLUMN ] column { SET | DROP } NOT NULL
ALTER [ COLUMN ] column SET STATISTICS integer
ALTER [ COLUMN ] column SET STORAGE { PLAIN | EXTERNAL | EXTENDED | MAIN }
ADD table_constraint
DROP CONSTRAINT constraint_name [ RESTRICT | CASCADE ]
CLUSTER ON index_name
SET WITHOUT CLUSTER
SET WITHOUT OIDS
OWNER TO new_owner
SET TABLESPACE tablespace_name
ALTER TABLESPACE
Modifiez la définition d'un tablespace.
ALTER TABLESPACE name RENAME TO new_name
ALTER TABLESPACE name OWNER TO new_owner
ALTER TRIGGER
Modifiez la définition d'un déclencheur.
ALTER TRIGGER name ON table RENAME TO new_name
MODIFIER LE TYPE
Modifiez la définition d'un type.
ALTER TYPE name OWNER TO new_owner
ALTER USER
Changer un compte d'utilisateur de base de données.
ALTER USER name [ [ WITH ] option [ ... ] ]
ALTER USER name RENAME TO new_name
ALTER USER name SET parameter { TO | = } { value | DEFAULT }
ALTER USER name RESET parameter
Où l' option peut être -
[ ENCRYPTED | UNENCRYPTED ] PASSWORD 'password'
| CREATEDB | NOCREATEDB
| CREATEUSER | NOCREATEUSER
| VALID UNTIL 'abstime'
ANALYSER
Collectez des statistiques sur une base de données.
ANALYZE [ VERBOSE ] [ table [ (column [, ...] ) ] ]
COMMENCER
Démarrez un bloc de transaction.
BEGIN [ WORK | TRANSACTION ] [ transaction_mode [, ...] ]
Où transaction_mode est l'un des -
ISOLATION LEVEL {
SERIALIZABLE | REPEATABLE READ | READ COMMITTED
| READ UNCOMMITTED
}
READ WRITE | READ ONLY
POINT DE CONTRÔLE
Forcer un point de contrôle du journal des transactions.
CHECKPOINT
FERMER
Fermez un curseur.
CLOSE name
GRAPPE
Regroupez une table selon un index.
CLUSTER index_name ON table_name
CLUSTER table_name
CLUSTER
COMMENTAIRE
Définissez ou modifiez le commentaire d'un objet.
COMMENT ON {
TABLE object_name |
COLUMN table_name.column_name |
AGGREGATE agg_name (agg_type) |
CAST (source_type AS target_type) |
CONSTRAINT constraint_name ON table_name |
CONVERSION object_name |
DATABASE object_name |
DOMAIN object_name |
FUNCTION func_name (arg1_type, arg2_type, ...) |
INDEX object_name |
LARGE OBJECT large_object_oid |
OPERATOR op (left_operand_type, right_operand_type) |
OPERATOR CLASS object_name USING index_method |
[ PROCEDURAL ] LANGUAGE object_name |
RULE rule_name ON table_name |
SCHEMA object_name |
SEQUENCE object_name |
TRIGGER trigger_name ON table_name |
TYPE object_name |
VIEW object_name
}
IS 'text'
COMMETTRE
Validez la transaction en cours.
COMMIT [ WORK | TRANSACTION ]
COPIE
Copiez les données entre un fichier et une table.
COPY table_name [ ( column [, ...] ) ]
FROM { 'filename' | STDIN }
[ WITH ]
[ BINARY ]
[ OIDS ]
[ DELIMITER [ AS ] 'delimiter' ]
[ NULL [ AS ] 'null string' ]
[ CSV [ QUOTE [ AS ] 'quote' ]
[ ESCAPE [ AS ] 'escape' ]
[ FORCE NOT NULL column [, ...] ]
COPY table_name [ ( column [, ...] ) ]
TO { 'filename' | STDOUT }
[ [ WITH ]
[ BINARY ]
[ OIDS ]
[ DELIMITER [ AS ] 'delimiter' ]
[ NULL [ AS ] 'null string' ]
[ CSV [ QUOTE [ AS ] 'quote' ]
[ ESCAPE [ AS ] 'escape' ]
[ FORCE QUOTE column [, ...] ]
CRÉER UN AGRÉGAT
Définissez une nouvelle fonction d'agrégation.
CREATE AGGREGATE name (
BASETYPE = input_data_type,
SFUNC = sfunc,
STYPE = state_data_type
[, FINALFUNC = ffunc ]
[, INITCOND = initial_condition ]
)
CRÉER UN CAST
Définissez une nouvelle distribution.
CREATE CAST (source_type AS target_type)
WITH FUNCTION func_name (arg_types)
[ AS ASSIGNMENT | AS IMPLICIT ]
CREATE CAST (source_type AS target_type)
WITHOUT FUNCTION
[ AS ASSIGNMENT | AS IMPLICIT ]
CRÉER UN DÉCLENCHEUR DE CONTRAINTE
Définissez un nouveau déclencheur de contrainte.
CREATE CONSTRAINT TRIGGER name
AFTER events ON
table_name constraint attributes
FOR EACH ROW EXECUTE PROCEDURE func_name ( args )
CRÉER UNE CONVERSION
Définissez une nouvelle conversion.
CREATE [DEFAULT] CONVERSION name
FOR source_encoding TO dest_encoding FROM func_name
CRÉER UNE BASE DE DONNÉES
Créez une nouvelle base de données.
CREATE DATABASE name
[ [ WITH ] [ OWNER [=] db_owner ]
[ TEMPLATE [=] template ]
[ ENCODING [=] encoding ]
[ TABLESPACE [=] tablespace ]
]
CRÉER UN DOMAINE
Définissez un nouveau domaine.
CREATE DOMAIN name [AS] data_type
[ DEFAULT expression ]
[ constraint [ ... ] ]
Où la contrainte est -
[ CONSTRAINT constraint_name ]
{ NOT NULL | NULL | CHECK (expression) }
CRÉER UNE FONCTION
Définissez une nouvelle fonction.
CREATE [ OR REPLACE ] FUNCTION name ( [ [ arg_name ] arg_type [, ...] ] )
RETURNS ret_type
{ LANGUAGE lang_name
| IMMUTABLE | STABLE | VOLATILE
| CALLED ON NULL INPUT | RETURNS NULL ON NULL INPUT | STRICT
| [ EXTERNAL ] SECURITY INVOKER | [ EXTERNAL ] SECURITY DEFINER
| AS 'definition'
| AS 'obj_file', 'link_symbol'
} ...
[ WITH ( attribute [, ...] ) ]
CRÉER UN GROUPE
Définissez un nouveau groupe d'utilisateurs.
CREATE GROUP name [ [ WITH ] option [ ... ] ]
Where option can be:
SYSID gid
| USER username [, ...]
CRÉER UN INDEX
Définissez un nouvel index.
CREATE [ UNIQUE ] INDEX name ON table [ USING method ]
( { column | ( expression ) } [ opclass ] [, ...] )
[ TABLESPACE tablespace ]
[ WHERE predicate ]
CRÉER UNE LANGUE
Définissez un nouveau langage procédural.
CREATE [ TRUSTED ] [ PROCEDURAL ] LANGUAGE name
HANDLER call_handler [ VALIDATOR val_function ]
CRÉER UN OPÉRATEUR
Définissez un nouvel opérateur.
CREATE OPERATOR name (
PROCEDURE = func_name
[, LEFTARG = left_type ] [, RIGHTARG = right_type ]
[, COMMUTATOR = com_op ] [, NEGATOR = neg_op ]
[, RESTRICT = res_proc ] [, JOIN = join_proc ]
[, HASHES ] [, MERGES ]
[, SORT1 = left_sort_op ] [, SORT2 = right_sort_op ]
[, LTCMP = less_than_op ] [, GTCMP = greater_than_op ]
)
CRÉER UNE CLASSE D'OPÉRATEUR
Définissez une nouvelle classe d'opérateur.
CREATE OPERATOR CLASS name [ DEFAULT ] FOR TYPE data_type
USING index_method AS
{ OPERATOR strategy_number operator_name [ ( op_type, op_type ) ] [ RECHECK ]
| FUNCTION support_number func_name ( argument_type [, ...] )
| STORAGE storage_type
} [, ... ]
CRÉER UNE RÈGLE
Définissez une nouvelle règle de réécriture.
CREATE [ OR REPLACE ] RULE name AS ON event
TO table [ WHERE condition ]
DO [ ALSO | INSTEAD ] { NOTHING | command | ( command ; command ... ) }
CRÉER UN SCHÉMA
Définissez un nouveau schéma.
CREATE SCHEMA schema_name
[ AUTHORIZATION username ] [ schema_element [ ... ] ]
CREATE SCHEMA AUTHORIZATION username
[ schema_element [ ... ] ]
CRÉER UNE SÉQUENCE
Définissez un nouveau générateur de séquence.
CREATE [ TEMPORARY | TEMP ] SEQUENCE name
[ INCREMENT [ BY ] increment ]
[ MINVALUE minvalue | NO MINVALUE ]
[ MAXVALUE maxvalue | NO MAXVALUE ]
[ START [ WITH ] start ] [ CACHE cache ] [ [ NO ] CYCLE ]
CRÉER UNE TABLE
Définissez une nouvelle table.
CREATE [ [ GLOBAL | LOCAL ] {
TEMPORARY | TEMP } ] TABLE table_name ( {
column_name data_type [ DEFAULT default_expr ] [ column_constraint [ ... ] ]
| table_constraint
| LIKE parent_table [ { INCLUDING | EXCLUDING } DEFAULTS ]
} [, ... ]
)
[ INHERITS ( parent_table [, ... ] ) ]
[ WITH OIDS | WITHOUT OIDS ]
[ ON COMMIT { PRESERVE ROWS | DELETE ROWS | DROP } ]
[ TABLESPACE tablespace ]
Où column_constraint est -
[ CONSTRAINT constraint_name ] {
NOT NULL |
NULL |
UNIQUE [ USING INDEX TABLESPACE tablespace ] |
PRIMARY KEY [ USING INDEX TABLESPACE tablespace ] |
CHECK (expression) |
REFERENCES ref_table [ ( ref_column ) ]
[ MATCH FULL | MATCH PARTIAL | MATCH SIMPLE ]
[ ON DELETE action ] [ ON UPDATE action ]
}
[ DEFERRABLE | NOT DEFERRABLE ] [ INITIALLY DEFERRED | INITIALLY IMMEDIATE ]
Et table_constraint est -
[ CONSTRAINT constraint_name ]
{ UNIQUE ( column_name [, ... ] ) [ USING INDEX TABLESPACE tablespace ] |
PRIMARY KEY ( column_name [, ... ] ) [ USING INDEX TABLESPACE tablespace ] |
CHECK ( expression ) |
FOREIGN KEY ( column_name [, ... ] )
REFERENCES ref_table [ ( ref_column [, ... ] ) ]
[ MATCH FULL | MATCH PARTIAL | MATCH SIMPLE ]
[ ON DELETE action ] [ ON UPDATE action ] }
[ DEFERRABLE | NOT DEFERRABLE ] [ INITIALLY DEFERRED | INITIALLY IMMEDIATE ]
CRÉER LA TABLE COMME
Définissez une nouvelle table à partir des résultats d'une requête.
CREATE [ [ GLOBAL | LOCAL ] { TEMPORARY | TEMP } ] TABLE table_name
[ (column_name [, ...] ) ] [ [ WITH | WITHOUT ] OIDS ]
AS query
CRÉER TABLESPACE
Définissez un nouvel espace de table.
CREATE TABLESPACE tablespace_name [ OWNER username ] LOCATION 'directory'
CRÉER UN DÉCLENCHEUR
Définissez un nouveau déclencheur.
CREATE TRIGGER name { BEFORE | AFTER } { event [ OR ... ] }
ON table [ FOR [ EACH ] { ROW | STATEMENT } ]
EXECUTE PROCEDURE func_name ( arguments )
CRÉER UN TYPE
Définissez un nouveau type de données.
CREATE TYPE name AS
( attribute_name data_type [, ... ] )
CREATE TYPE name (
INPUT = input_function,
OUTPUT = output_function
[, RECEIVE = receive_function ]
[, SEND = send_function ]
[, ANALYZE = analyze_function ]
[, INTERNALLENGTH = { internal_length | VARIABLE } ]
[, PASSEDBYVALUE ]
[, ALIGNMENT = alignment ]
[, STORAGE = storage ]
[, DEFAULT = default ]
[, ELEMENT = element ]
[, DELIMITER = delimiter ]
)
CRÉER UN UTILISATEUR
Définissez un nouveau compte d'utilisateur de base de données.
CREATE USER name [ [ WITH ] option [ ... ] ]
Où l' option peut être -
SYSID uid
| [ ENCRYPTED | UNENCRYPTED ] PASSWORD 'password'
| CREATEDB | NOCREATEDB
| CREATEUSER | NOCREATEUSER
| IN GROUP group_name [, ...]
| VALID UNTIL 'abs_time'
CRÉER UNE VUE
Définissez une nouvelle vue.
CREATE [ OR REPLACE ] VIEW name [ ( column_name [, ...] ) ] AS query
DÉALLOCER
Désallouer une instruction préparée.
DEALLOCATE [ PREPARE ] plan_name
DÉCLARER
Définissez un curseur.
DECLARE name [ BINARY ] [ INSENSITIVE ] [ [ NO ] SCROLL ]
CURSOR [ { WITH | WITHOUT } HOLD ] FOR query
[ FOR { READ ONLY | UPDATE [ OF column [, ...] ] } ]
EFFACER
Supprimer les lignes d'une table.
DELETE FROM [ ONLY ] table [ WHERE condition ]
DROP AGGREGATE
Supprimez une fonction d'agrégation.
DROP AGGREGATE name ( type ) [ CASCADE | RESTRICT ]
DROP CAST
Retirez un plâtre.
DROP CAST (source_type AS target_type) [ CASCADE | RESTRICT ]
CONVERSION DE GOUTTE
Supprimer une conversion.
DROP CONVERSION name [ CASCADE | RESTRICT ]
DROP BASE DE DONNÉES
Supprimer une base de données.
DROP DATABASE name
DROP DOMAIN
Supprimer un domaine.
DROP DOMAIN name [, ...] [ CASCADE | RESTRICT ]
FONCTION DROP
Supprimer une fonction.
DROP FUNCTION name ( [ type [, ...] ] ) [ CASCADE | RESTRICT ]
GROUPE DROP
Supprimer un groupe d'utilisateurs.
DROP GROUP name
DROP INDEX
Supprimer un index.
DROP INDEX name [, ...] [ CASCADE | RESTRICT ]
DROP LANGUAGE
Supprimez un langage procédural.
DROP [ PROCEDURAL ] LANGUAGE name [ CASCADE | RESTRICT ]
OPÉRATEUR DE GOUTTE
Supprimer un opérateur.
DROP OPERATOR name ( { left_type | NONE }, { right_type | NONE } )
[ CASCADE | RESTRICT ]
Classe d'opérateur de chute
Supprimez une classe d'opérateur.
DROP OPERATOR CLASS name USING index_method [ CASCADE | RESTRICT ]
RÈGLE DE DROP
Supprimez une règle de réécriture.
DROP RULE name ON relation [ CASCADE | RESTRICT ]
SCHÉMA DE DROP
Supprimez un schéma.
DROP SCHEMA name [, ...] [ CASCADE | RESTRICT ]
SÉQUENCE DE GOUTTE
Supprimer une séquence.
DROP SEQUENCE name [, ...] [ CASCADE | RESTRICT ]
DROP TABLE
Supprimer une table.
DROP TABLE name [, ...] [ CASCADE | RESTRICT ]
DROP TABLESPACE
Supprimez un tablespace.
DROP TABLESPACE tablespace_name
GÂCHETTE DE DÉCLENCHEMENT
Retirez un déclencheur.
DROP TRIGGER name ON table [ CASCADE | RESTRICT ]
TYPE DE GOUTTE
Supprimer un type de données.
DROP TYPE name [, ...] [ CASCADE | RESTRICT ]
DROP UTILISATEUR
Supprimez un compte d'utilisateur de base de données.
DROP USER name
DROP VIEW
Supprimer une vue.
DROP VIEW name [, ...] [ CASCADE | RESTRICT ]
FIN
Validez la transaction en cours.
END [ WORK | TRANSACTION ]
EXÉCUTER
Exécutez une instruction préparée.
EXECUTE plan_name [ (parameter [, ...] ) ]
EXPLIQUE
Afficher le plan d'exécution d'une instruction.
EXPLAIN [ ANALYZE ] [ VERBOSE ] statement
FETCH
Récupérez les lignes d'une requête à l'aide d'un curseur.
FETCH [ direction { FROM | IN } ] cursor_name
Où la direction peut être vide ou l'un des -
NEXT
PRIOR
FIRST
LAST
ABSOLUTE count
RELATIVE count
count
ALL
FORWARD
FORWARD count
FORWARD ALL
BACKWARD
BACKWARD count
BACKWARD ALL
SUBVENTION
Définissez les privilèges d'accès.
GRANT { { SELECT | INSERT | UPDATE | DELETE | RULE | REFERENCES | TRIGGER }
[,...] | ALL [ PRIVILEGES ] }
ON [ TABLE ] table_name [, ...]
TO { username | GROUP group_name | PUBLIC } [, ...] [ WITH GRANT OPTION ]
GRANT { { CREATE | TEMPORARY | TEMP } [,...] | ALL [ PRIVILEGES ] }
ON DATABASE db_name [, ...]
TO { username | GROUP group_name | PUBLIC } [, ...] [ WITH GRANT OPTION ]
GRANT { CREATE | ALL [ PRIVILEGES ] }
ON TABLESPACE tablespace_name [, ...]
TO { username | GROUP group_name | PUBLIC } [, ...] [ WITH GRANT OPTION ]
GRANT { EXECUTE | ALL [ PRIVILEGES ] }
ON FUNCTION func_name ([type, ...]) [, ...]
TO { username | GROUP group_name | PUBLIC } [, ...] [ WITH GRANT OPTION ]
GRANT { USAGE | ALL [ PRIVILEGES ] }
ON LANGUAGE lang_name [, ...]
TO { username | GROUP group_name | PUBLIC } [, ...] [ WITH GRANT OPTION ]
GRANT { { CREATE | USAGE } [,...] | ALL [ PRIVILEGES ] }
ON SCHEMA schema_name [, ...]
TO { username | GROUP group_name | PUBLIC } [, ...] [ WITH GRANT OPTION ]
INSÉRER
Créez de nouvelles lignes dans une table.
INSERT INTO table [ ( column [, ...] ) ]
{ DEFAULT VALUES | VALUES ( { expression | DEFAULT } [, ...] ) | query }
ECOUTEZ
Écoutez une notification.
LISTEN name
CHARGE
Chargez ou rechargez un fichier de bibliothèque partagée.
LOAD 'filename'
FERMER À CLÉ
Verrouillez une table.
LOCK [ TABLE ] name [, ...] [ IN lock_mode MODE ] [ NOWAIT ]
Où lock_mode est l'un des -
ACCESS SHARE | ROW SHARE | ROW EXCLUSIVE | SHARE UPDATE EXCLUSIVE
| SHARE | SHARE ROW EXCLUSIVE | EXCLUSIVE | ACCESS EXCLUSIVE
BOUGE TOI
Positionnez un curseur.
MOVE [ direction { FROM | IN } ] cursor_name
NOTIFIER
Générez une notification.
NOTIFY name
PRÉPARER
Préparez une instruction pour exécution.
PREPARE plan_name [ (data_type [, ...] ) ] AS statement
RÉINDEX
Reconstruisez les index.
REINDEX { DATABASE | TABLE | INDEX } name [ FORCE ]
LIBÉRER SAVEPOINT
Détruisez un point de sauvegarde précédemment défini.
RELEASE [ SAVEPOINT ] savepoint_name
RÉINITIALISER
Restaurez la valeur d'un paramètre d'exécution à la valeur par défaut.
RESET name
RESET ALL
RÉVOQUER
Supprimez les privilèges d'accès.
REVOKE [ GRANT OPTION FOR ]
{ { SELECT | INSERT | UPDATE | DELETE | RULE | REFERENCES | TRIGGER }
[,...] | ALL [ PRIVILEGES ] }
ON [ TABLE ] table_name [, ...]
FROM { username | GROUP group_name | PUBLIC } [, ...]
[ CASCADE | RESTRICT ]
REVOKE [ GRANT OPTION FOR ]
{ { CREATE | TEMPORARY | TEMP } [,...] | ALL [ PRIVILEGES ] }
ON DATABASE db_name [, ...]
FROM { username | GROUP group_name | PUBLIC } [, ...]
[ CASCADE | RESTRICT ]
REVOKE [ GRANT OPTION FOR ]
{ CREATE | ALL [ PRIVILEGES ] }
ON TABLESPACE tablespace_name [, ...]
FROM { username | GROUP group_name | PUBLIC } [, ...]
[ CASCADE | RESTRICT ]
REVOKE [ GRANT OPTION FOR ]
{ EXECUTE | ALL [ PRIVILEGES ] }
ON FUNCTION func_name ([type, ...]) [, ...]
FROM { username | GROUP group_name | PUBLIC } [, ...]
[ CASCADE | RESTRICT ]
REVOKE [ GRANT OPTION FOR ]
{ USAGE | ALL [ PRIVILEGES ] }
ON LANGUAGE lang_name [, ...]
FROM { username | GROUP group_name | PUBLIC } [, ...]
[ CASCADE | RESTRICT ]
REVOKE [ GRANT OPTION FOR ]
{ { CREATE | USAGE } [,...] | ALL [ PRIVILEGES ] }
ON SCHEMA schema_name [, ...]
FROM { username | GROUP group_name | PUBLIC } [, ...]
[ CASCADE | RESTRICT ]
RETOUR EN ARRIERE
Abandonnez la transaction en cours.
ROLLBACK [ WORK | TRANSACTION ]
ROLLBACK POUR SAVEPOINT
Revenez à un point de sauvegarde.
ROLLBACK [ WORK | TRANSACTION ] TO [ SAVEPOINT ] savepoint_name
SAVEPOINT
Définissez un nouveau point de sauvegarde dans la transaction en cours.
SAVEPOINT savepoint_name
SÉLECTIONNER
Récupérez les lignes d'une table ou d'une vue.
SELECT [ ALL | DISTINCT [ ON ( expression [, ...] ) ] ]
* | expression [ AS output_name ] [, ...]
[ FROM from_item [, ...] ]
[ WHERE condition ]
[ GROUP BY expression [, ...] ]
[ HAVING condition [, ...] ]
[ { UNION | INTERSECT | EXCEPT } [ ALL ] select ]
[ ORDER BY expression [ ASC | DESC | USING operator ] [, ...] ]
[ LIMIT { count | ALL } ]
[ OFFSET start ]
[ FOR UPDATE [ OF table_name [, ...] ] ]
Où
from_item peut être l'un des suivants:
[ ONLY ] table_name [ * ] [ [ AS ] alias [ ( column_alias [, ...] ) ] ]
( select ) [ AS ] alias [ ( column_alias [, ...] ) ]
function_name ( [ argument [, ...] ] )
[ AS ] alias [ ( column_alias [, ...] | column_definition [, ...] ) ]
function_name ( [ argument [, ...] ] ) AS ( column_definition [, ...] )
from_item [ NATURAL ] join_type from_item
[ ON join_condition | USING ( join_column [, ...] ) ]
SÉLECTIONNEZ DANS
Définissez une nouvelle table à partir des résultats d'une requête.
SELECT [ ALL | DISTINCT [ ON ( expression [, ...] ) ] ]
* | expression [ AS output_name ] [, ...]
INTO [ TEMPORARY | TEMP ] [ TABLE ] new_table
[ FROM from_item [, ...] ]
[ WHERE condition ]
[ GROUP BY expression [, ...] ]
[ HAVING condition [, ...] ]
[ { UNION | INTERSECT | EXCEPT } [ ALL ] select ]
[ ORDER BY expression [ ASC | DESC | USING operator ] [, ...] ]
[ LIMIT { count | ALL } ]
[ OFFSET start ]
[ FOR UPDATE [ OF table_name [, ...] ] ]
ENSEMBLE
Modifiez un paramètre d'exécution.
SET [ SESSION | LOCAL ] name { TO | = } { value | 'value' | DEFAULT }
SET [ SESSION | LOCAL ] TIME ZONE { time_zone | LOCAL | DEFAULT }
FIXER DES CONTRAINTES
Définissez les modes de vérification des contraintes pour la transaction en cours.
SET CONSTRAINTS { ALL | name [, ...] } { DEFERRED | IMMEDIATE }
DÉFINIR L'AUTORISATION DE SESSION
Définissez l'identifiant de l'utilisateur de session et l'identifiant de l'utilisateur actuel de la session en cours.
SET [ SESSION | LOCAL ] SESSION AUTHORIZATION username
SET [ SESSION | LOCAL ] SESSION AUTHORIZATION DEFAULT
RESET SESSION AUTHORIZATION
RÉGLER LA TRANSACTION
Définissez les caractéristiques de la transaction en cours.
SET TRANSACTION transaction_mode [, ...]
SET SESSION CHARACTERISTICS AS TRANSACTION transaction_mode [, ...]
Où transaction_mode est l'un des -
ISOLATION LEVEL { SERIALIZABLE | REPEATABLE READ | READ COMMITTED
| READ UNCOMMITTED }
READ WRITE | READ ONLY
SPECTACLE
Afficher la valeur d'un paramètre d'exécution.
SHOW name
SHOW ALL
COMMENCER LA TRANSACTION
Démarrez un bloc de transaction.
START TRANSACTION [ transaction_mode [, ...] ]
Où transaction_mode est l'un des -
ISOLATION LEVEL { SERIALIZABLE | REPEATABLE READ | READ COMMITTED
| READ UNCOMMITTED }
READ WRITE | READ ONLY
TRONQUER
Videz une table.
TRUNCATE [ TABLE ] name
ÉCOUTER
Arrêtez d'écouter une notification.
UNLISTEN { name | * }
METTRE À JOUR
Mettez à jour les lignes d'une table.
UPDATE [ ONLY ] table SET column = { expression | DEFAULT } [, ...]
[ FROM from_list ]
[ WHERE condition ]
VIDE
Ramassez les ordures et analysez éventuellement une base de données.
VACUUM [ FULL ] [ FREEZE ] [ VERBOSE ] [ table ]
VACUUM [ FULL ] [ FREEZE ] [ VERBOSE ] ANALYZE [ table [ (column [, ...] ) ] ]