André Laugks: Mysql 4.0: Unique Frage

Beitrag lesen

Hallo!

muss ich das selber lösen, dass ein Produkt nur ein Default haben kann, oder kann man das irgendwie mit der Datenbank lösen?

UNIQUE lässt unendlich vielen Zeilen mit NULL zu. Wenn Du also anstatt von "0" "NULL" verwendest, kann UNIQUE Dein Problem lösen.

mysql> SELECT * FROM test;
+------+
| id   |
+------+
| NULL |
|    1 |
| NULL |
| NULL |
+------+
4 rows in set (0.00 sec)

mysql> INSERT INTO test (id) VALUES (1);
ERROR 1062 (23000): Duplicate entry '1' for key 1

Du solltest trotzdem über die Applikation testen, ob schon einmal "1"  existiert und vielleicht eine Fehlermeldung anzeigen.

UNIQUE kann Dir lediglich helfen, die Datenintegrität zu wahren.

André Laugks

--
Die Frau geht, die Hilti bleibt!