Hallo allerseits.
Ich habe ein Problem mit MySQL (5.0.32). Folgende Befehle erstellen das Testszenario:
CREATE TABLE testunique (id1 INT NOT NULL, id2 VARCHAR(512) NOT NULL, id3 VARCHAR(512) NULL, UNIQUE KEY (id1, id2, id3)) ENGINE InnoDB;
INSERT INTO testunique VALUES (1, "a", NULL);
INSERT INTO testunique VALUES (1, "a", NULL);
Der 2. INSERT-Befehl sollte meiner Meinung nach einen Fehler melden, jedoch fügt MySQL ganz normal den Datensatz ein und die Tabelle besteht aus zwei Zeilen. Das verwirrt mich, denn es sollte doch eigentlich nicht möglich sein, mit dem UNIQUE KEY einen zweiten identischen Eintrag zu erzeugen! Was ist da falsch?
Grüsse,
nix