Comment générer un uuid avec PostgreSQL 8.4.4 sur Ubuntu 10.04?

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;