Je n'ai pas pu faire fonctionner ma première procédure stockée, j'ai donc copié cet exemple dans le manuel:
CREATE PROCEDURE insert_data(a integer, b integer)
LANGUAGE SQL
AS $$
INSERT INTO tbl VALUES (a);
INSERT INTO tbl VALUES (b);
$$;
CALL insert_data(1, 2);
et j'obtiens le message d'erreur suivant:
ERROR: syntax error at or near "PROCEDURE" LINE 1: CREATE PROCEDURE insert_data(a integer, b integer) ^ SQL state: 42601 Character: 8
Qu'est-ce que je fais mal?
J'exécute la base de données sur localhost, en tant qu'utilisateur administrateur. Je l'ai installé moi-même. Processus d'installation terminé sans erreur, et je peux créer des tableaux, des fonctions, des déclencheurs, etc.
Comme mentionné dans les commentaires, PostgreSQL-10 n'a pas de procédures stockées. Il en va de même pour les versions antérieures.
Solutions de contournement:
Merci, @Erwin Brandstetter et @a_horse_with_no_name