From: | "Andreas Bauer" <andreas_bauer(at)arcor(dot)de> |
---|---|
To: | <pgsql-de-allgemein(at)postgresql(dot)org> |
Subject: | Doppeleinträge in der postgres DB mit unique vermeiden |
Date: | 2006-11-10 11:53:15 |
Message-ID: | 000101c704be$ce5c20b0$0200a8c0@neuenheim.homedns.org |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-de-allgemein |
Hallo NG,
um Doppeleinträge in der postgres DB zu vermeiden, habe ich in meinem
create table eingefügt:
CONSTRAINT con1 UNIQUE (lastname,firstname)
Wie kann ich den UNIQUE Befehl schreiben, dass die Datensätze nicht doppelt
sind,
bei denen die Bedingung erfüllt ist, dass der lastname "und" der firstname
identisch sind, also
wenn in einer Zeile Bauer Andreas als last- und firstname steht, dass Bauer
und Andreas als first-
und lastname nicht noch mal in einer Zeile der Tabelle eingetragen wird. Es
kann ja auch eine andere Person
den gleichen lastname, aber einen anderen firstname haben. Da würde der
CONSTRAINT con1 UNIQUE (lastname,firstname) ja schon den lastname nicht
zulassen,
oder lieg ich da falsch? Geht das überhaupt mit UNIQUE, mit einer &
Verknüpfung von den Feldern?
Die pq-query Fehlermeldung von php:
Warning: pg_query() [function.pg-query]: Query failed: ERROR: duplicate key
violates unique constraint "con1" in
Kann man die abschalten?
Grüße
Andreas
create table t_authors
(
authorid int4 primary key
default nextval('s_authors'),
lastname varchar(31) not null,
firstname varchar(31) not null,
CONSTRAINT con1 UNIQUE (lastname,firstname)
);
From | Date | Subject | |
---|---|---|---|
Next Message | Guido Neitzer | 2006-11-10 11:58:39 | Re: Doppeleinträge in der postgres DB mit unique vermeiden |
Previous Message | Albe Laurenz | 2006-11-09 12:49:14 | Re: Problem PL/Python-Stored Procedure und BYTEA |