Generieren einer UUID in Postgres for Insert-Anweisung?

Meine Frage ist ziemlich einfach. Ich bin mir bewusst das Konzept einer UUID und ich will erzeugen einen zu finden, um jedes 'Element' von 'speichern' in meiner DB mit. Sinnvoll erscheint, richtig?

Das problem ist, die folgende Zeile gibt einen Fehler zurück:

honeydb=# insert into items values(
uuid_generate_v4(), 54.321, 31, 'desc 1', 31.94);
ERROR:  function uuid_generate_v4() does not exist
LINE 2: uuid_generate_v4(), 54.321, 31, 'desc 1', 31.94);
        ^
HINT:  No function matches the given name and argument types. You might need to add explicit type casts.

Ich habe gelesen, die Seite an: http://www.postgresql.org/docs/current/static/uuid-ossp.html

Generieren einer UUID in Postgres for Insert-Anweisung?

Ich bin mit Postgres 8.4 auf Ubuntu 10.04 x64.

Kommentar zu dem Problem - Öffnen
Postgres unterstützt nativ UUID als Daten-Typ, der sogar in der Lage, die indiziert und dient als primary key. Aber generieren einen UUID-Wert, wie zu etablieren, einen Standardwert für eine Spalte benötigen Sie eine Postgres-Erweiterung (ein plugin). Viele builds (Distributionen) von Postgres eine solche Erweiterung aber nicht die Erweiterung zu aktivieren. Siehe die richtige Antwort von Craig Ringer um zu erfahren, wie es zu aktivieren. Kommentarautor: Basil Bourque
Wenn Sie die uuid-ossp installiert & Sie weiterhin diesen Fehler erhalten, versuchen Sie, indem die Funktion mit schema-Namen, z.B. select dbo.uuid_generate_v4() Kommentarautor: Richard

InformationsquelleAutor der Frage anon58192932 | 2012-09-20

Schreibe einen Kommentar