J’utilise PostgreSQL 8.4.4 avec Ubuntu 10.04.
J’essaie de générer de l’uuid mais je ne trouve pas le moyen de le faire.
J’ai le uuid-ossp.sql dans /usr/share/postgresql/8.4/consortingb/uuid-ossp.sql
Quand j’essaye c’est ce que j’obtiens:
postgres=# SELECT uuid_generate_v1(); ERROR: function uuid_generate_v1() does not exist LINE 1: SELECT uuid_generate_v1(); ^ HINT: No function matches the given name and argument types. You might need to add explicit type casts.
Une idée ?
Les éléments de consortingb
ne sont pas exécutés automatiquement. Vous devez l’exécuter vous-même pour installer les fonctions. Je ne connais pas la version 8.4, mais dans la version 8.3, celle-ci semble ne l’installer que par firebase database, alors ouvrez la firebase database que vous utilisez dans psql et \i /usr/share/postgresql/8.4/consortingb/uuid-ossp.sql
la commande \i /usr/share/postgresql/8.4/consortingb/uuid-ossp.sql
J’ai vu cela dans mes voyages PostgreSQL. Il nécessite le module consortingb pgcrypto.
CREATE OR REPLACE FUNCTION generate_uuid() RETURNS UUID AS $$ SELECT ENCODE(GEN_RANDOM_BYTES(16), 'hex')::UUID $$ LANGUAGE SQL IMMUTABLE;