Heim >Datenbank >MySQL-Tutorial >Wie erzwinge ich die Eindeutigkeit über mehrere Spalten hinweg in MySQL?
In MySQL können Sie eine eindeutige Einschränkung für eine Tabelle erstellen, um sicherzustellen, dass keine zwei Zeilen identische Werte für eine bestimmte Spalte haben Reihe von Spalten. Dies ist nützlich, um die Datenintegrität aufrechtzuerhalten und die Eindeutigkeit über verschiedene Datensätze hinweg zu erzwingen.
Beachten Sie die folgende Tabelle:
CREATE TABLE votes ( id INT NOT NULL AUTO_INCREMENT, user VARCHAR(255) NOT NULL, email VARCHAR(255) NOT NULL, address VARCHAR(255) NOT NULL, PRIMARY KEY (id) );
Um eine eindeutige Einschränkung zu erstellen, die für die Benutzer-, E-Mail- und Adressspalten gilt können Sie die folgende Syntax verwenden:
ALTER TABLE `votes` ADD UNIQUE `unique_index`(`user`, `email`, `address`);
Die ALTER TABLE-Anweisung wird verwendet, um das Schema der vorhandenen Tabelle zu ändern. Die ADD UNIQUE-Klausel erstellt eine neue eindeutige Einschränkung mit dem Namen unique_index. Die in den Klammern angegebenen Spalten sind diejenigen, die in die Einschränkung einbezogen werden.
Nach der Ausführung dieser Anweisung erzwingt die MySQL-Datenbank die eindeutige Einschränkung für die angegebenen Spalten. Dies bedeutet, dass jeder Versuch, eine neue Zeile mit identischen Werten für Benutzer, E-Mail und Adresse einzufügen, zu einem SQL-Fehler führt und die Zeile nicht zur Tabelle hinzugefügt wird.
Durch die Implementierung eindeutiger Einschränkungen können Sie dies tun Stellen Sie die Integrität und Genauigkeit Ihrer Daten sicher, indem Sie doppelte Werte in bestimmten Spalten verhindern.
Das obige ist der detaillierte Inhalt vonWie erzwinge ich die Eindeutigkeit über mehrere Spalten hinweg in MySQL?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!