WO die NICHT VORHANDEN ist in PostgreSQL gibt syntax-Fehler

Wenn man versucht, die WHERE NOT EXISTS - Klausel, um zu verhindern, dass das hinzufügen einer Zeile mit einem doppelten Wert in der Spalte age bekomme ich den Fehler syntax error at or near "WHERE".

Warum hat es werfen ein syntax-Fehler? Ich bin mit Postgresql 9.1.

SQL

INSERT INTO live.users ("website", "age") 
values ('abc', '123')
WHERE NOT EXISTS (SELECT age FROM live.users WHERE age = 123);

Fehler

ERROR:  syntax error at or near "WHERE"
LINE 6: WHERE NOT EXISTS (SELECT age FROM live.users W...
Wenn Sie möchten, um zu verhindern, dass doppelte Werte in einer Spalte, wäre es besser, fügen Sie ein unique constraintdieser Spalte. (ALTER TABLE live.Benutzer ADD CONSTRAINT age_unique EINZIGARTIGE(Alter) )

InformationsquelleAutor Nyxynyx | 2013-04-05

Schreibe einen Kommentar