Heim  >  Artikel  >  Datenbank  >  Wie füge ich eine eindeutige Einschränkung in MySQL hinzu?

Wie füge ich eine eindeutige Einschränkung in MySQL hinzu?

青灯夜游
青灯夜游Original
2020-10-13 17:13:5127904Durchsuche

Methode: 1. Verwenden Sie beim Erstellen einer Tabelle die Anweisung „CREATE TABLE-Tabellenname (Feldname-Datentyp UNIQUE);“ 2. Verwenden Sie beim Ändern der Tabelle „ALTER TABLE-Tabellenname ADD CONSTRAINT Unique Constraint Name UNIQUE“. (Spaltenname) );“ Anweisung zum Hinzufügen.

Wie füge ich eine eindeutige Einschränkung in MySQL hinzu?

(Empfohlenes Tutorial: MySQL-Video-Tutorial)

MySQL-Eindeutigkeitsbeschränkung (Unique Key) bedeutet, dass der Wert eines Felds in allen Datensätzen nicht wiederholt erscheinen kann. Nach dem Hinzufügen einer eindeutigen Einschränkung zum ID-Feld ist der ID-Wert jedes Datensatzes beispielsweise eindeutig und kann nicht wiederholt werden. Wenn der ID-Wert eines der Datensätze „0001“ ist, kann es in der Tabelle keinen weiteren Datensatz mit dem ID-Wert „0001“ geben.

Eindeutige Einschränkungen ähneln Primärschlüsseleinschränkungen darin, dass beide die Eindeutigkeit von Spalten sicherstellen. Der Unterschied besteht darin, dass eine Tabelle mehrere eindeutige Einschränkungen enthalten kann und die Spalte, in der die eindeutige Einschränkung festgelegt ist, Nullwerte haben darf, es jedoch nur einen Nullwert geben kann. In einer Tabelle kann es nur eine Primärschlüsseleinschränkung geben, und Nullwerte sind nicht zulässig. Um beispielsweise in der Benutzerinformationstabelle doppelte Benutzernamen in der Tabelle zu vermeiden, kann der Benutzername als eindeutige Einschränkung festgelegt werden.

Eindeutige Einschränkungen beim Erstellen der Tabelle festlegen

Eindeutige Einschränkungen können direkt beim Erstellen der Tabelle festgelegt werden, normalerweise für andere Spalten außer dem Primärschlüssel.

Verwenden Sie das Schlüsselwort UNIQUE direkt nach der Definition der Spalte, um eine eindeutige Einschränkung anzugeben. Das Syntaxformat lautet wie folgt:

CREATE TABLE <数据表名>(<字段名> <数据类型> UNIQUE);

Beispiel 1

Erstellen Sie die Datentabelle tb_dept2 und geben Sie einen eindeutigen Namen für die Abteilung an und Laufergebnisse sind wie folgt.

mysql> CREATE TABLE tb_dept2
    -> (
    -> id INT(11) PRIMARY KEY,
    -> name VARCHAR(22) UNIQUE,
    -> location VARCHAR(50)
    -> );
Query OK, 0 rows affected (0.37 sec)

mysql> DESC tb_dept2;
+----------+-------------+------+-----+---------+-------+
| Field    | Type        | Null | Key | Default | Extra |
+----------+-------------+------+-----+---------+-------+
| id       | int(11)     | NO   | PRI | NULL    |       |
| name     | varchar(40) | YES  | UNI | NULL    |       |
| location | varchar(50) | YES  |     | NULL    |       |
+----------+-------------+------+-----+---------+-------+
3 rows in set (0.08 sec)

Fügen Sie beim Ändern der Tabelle eine eindeutige Einschränkung hinzu

Das Syntaxformat zum Hinzufügen einer eindeutigen Einschränkung beim Ändern der Tabelle lautet:

ALTER TABLE <数据表名> ADD CONSTRAINT <唯一约束名> UNIQUE(<列名>);

Beispiel 2

Ändern Sie die Datentabelle tb_dept1 und geben Sie einen eindeutigen Namen an Für die Abteilung werden unten die SQL-Anweisung und die laufenden Ergebnisse angezeigt.

mysql> ALTER TABLE tb_dept1
    -> ADD CONSTRAINT unique_name UNIQUE(name);
Query OK, 0 rows affected (0.63 sec)
Records: 0  Duplicates: 0  Warnings: 0
mysql> DESC tb_dept1;
+----------+-------------+------+-----+---------+-------+
| Field    | Type        | Null | Key | Default | Extra |
+----------+-------------+------+-----+---------+-------+
| id       | int(11)     | NO   | PRI | NULL    |       |
| name     | varchar(22) | NO   | UNI | NULL    |       |
| location | varchar(50) | YES  |     | NULL    |       |
+----------+-------------+------+-----+---------+-------+
3 rows in set (0.00 sec)

Das obige ist der detaillierte Inhalt vonWie füge ich eine eindeutige Einschränkung in MySQL hinzu?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn