Je veux utiliser uuid dans Postgresql 9.2 sur Ubuntu 13. Ainsi, lorsque j’ai essayé de vérifier s’il est disponible ou non, j’ai:
select uuid_generate_v4() as one;
Et ça m'a donné ERROR: function uuid_generate_v4() does not exist
Puis j'ai fait CREATE EXTENSION "uuid-ossp";
ERROR: could not open extension control file "/usr/share/postgresql/9.2/extension/uuid-ossp.control": No such file or directory
Bien, qu'est-ce que je fais ensuite?
Par ailleurs, SELECT * FROM pg_available_extensions;
renvoie uniquement plpsql (1.0)
.
Le package du système d'exploitation contenant l'extension n'est pas installé. Pour l'installer:
apt-get install postgresql-contrib-9.2
Pour ceux qui utilisent le gestionnaire de versions asdf avec le plugin asdf-postgres , installer les versions de postgres comme suit corrige ce problème:
POSTGRES_EXTRA_CONFIGURE_OPTIONS=--with-uuid=e2fs asdf install postgres <VERSION>
Si l'erreur persiste, essayez d'exécuter manuellement les deux fichiers SQL contenus dans /usr/share/postgresql/9.X/extension/uuid-ossp*.sql
dans votre base de données.