SELECT gen_random_uuid()
produit une sortie
ERROR: function gen_random_uuid() does not exist
SQL state: 42883
Hint: No function matches the given name and argument types. You might need to add explicit type casts.
J'ai exécuté CREATE EXTENSION pgcrypto;
Sur la base de données sélectionnée et SELECT gen_random_bytes(1)
fonctionne parfaitement (gen_random_bytes
Ne fonctionne pas sur les autres bases de données où l'extension pgcrypto
n'a pas été créée manuellement).
% psql --version
psql (PostgreSQL) 9.5.3
La version Ubuntu est 16.04.
vous pouvez vérifier si les fonctions sont définies en utilisant
select pg_get_functiondef(to_regproc('gen_random_bytes'));
select pg_get_functiondef(to_regproc('gen_random_uuid'));
ou:
select * from pg_proc where proname like 'gen_random_%';
si les deux fonctions ne sont pas définies, vous avez probablement eu une erreur avec la création de l'extension - il suffit de la supprimer et de recréer:
drop extension pgcrypto;
CREATE EXTENSION pgcrypto;