# Syntaxe PostgreSQL ## Incrément automatique Créer une colonne id (identifiant) clé primaire avec incrémentation automatique ```sql id bigint primary key generated always as identity ``` - entier sur 64 bits : `bigint` - clé primaire : `primary key` - incrément automatique : `generated always as identity` ## Fonctions date et heure - `current_date` : date actuelle - `current_time` : heure actuelle - `current_timestamp` : date et heure actuelle - `now()` : date et heure actuelle (fonction historique conservée) Créer une colonne `creation_date` de type `timestamp` date et heure avec comme valeur par défaut la date et l'heure d'exécution. ```sql creation_date timestamp default now() ``` ## Procédures stockées ```sql create or replace procedure nom_procedure(paramètres) language plpgsql as $$ declare -- variables locales begin -- instructions SQL de la fonction end; $$; ``` Pour appeler la procédure stockée ```sql call nom_procedure('Félicien', 'Hébrard', '1970-10-15'); ``` ## Afficher des messages Pour afficher un message de réussite : ```sql raise notice 'message %', variable; ``` Vous pouvez déclencher une erreur métier à l’aide de : ```sql raise exception 'message'; ```