Heim >Datenbank >MySQL-Tutorial >Was ist MySQL einzigartig?

Was ist MySQL einzigartig?

青灯夜游
青灯夜游Original
2023-04-19 15:30:186038Durchsuche

In MySQL bezieht sich „unique“ auf „eindeutige Einschränkung“, was bedeutet, dass der Wert eines Felds in allen Datensätzen nicht wiederholt erscheinen kann. Eine Tabelle kann mehrere eindeutige Einschränkungen enthalten, und die Spalte, in der die eindeutige Einschränkung festgelegt ist, darf Nullwerte haben, es kann jedoch nur einen Nullwert geben. Die Syntax zum Hinzufügen einer eindeutigen Einschränkung beim Ändern einer Tabelle lautet „ALTER TABLE 121ca568034652effde0eb1236e4acfa ADD CONSTRAINT 013d0e2501ad7a6a9ceca0b09e49d9ca UNIQUE(569459f16acfc75ba95208cdc775a6a6);“.

Was ist MySQL einzigartig?

Die Betriebsumgebung dieses Tutorials: Windows7-System, MySQL8-Version, Dell G3-Computer.

In MySQL bezieht sich „unique“ auf „eindeutige Einschränkung“.

MySQL-Eindeutigkeitsbeschränkung (UNIQUE KEY)

MySQL-Eindeutigkeitsbeschränkung (Unique Key) bedeutet, dass der Wert eines Felds in allen Datensätzen nicht wiederholt vorkommen 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:

<字段名> <数据类型> UNIQUE

Beispiel 1:

Erstellen Sie die Datentabelle tb_dept2 und geben Sie einen eindeutigen Namen für die Abteilung an Die 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 den eindeutigen Namen der Abteilung an , SQL-Anweisung und Ausführungsergebnisse Wie unten gezeigt.

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)

Eindeutige Einschränkung löschen

Das Syntaxformat zum Löschen einer eindeutigen Einschränkung in MySQL lautet wie folgt:

ALTER TABLE <表名> DROP INDEX <唯一约束名>;

Beispiel 3:

Löschen Sie die eindeutige Einschränkung unique_name in der Datentabelle tb_dept1. Die SQL-Anweisung und die Ausführungsergebnisse sind wie folgt.

mysql> ALTER TABLE tb_dept1
    -> DROP INDEX unique_name;
Query OK, 0 rows affected (0.20 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   |     | NULL    |       |
| location | varchar(50) | YES  |     | NULL    |       |
+----------+-------------+------+-----+---------+-------+
3 rows in set (0.00 sec)

【Verwandte Empfehlungen: MySQL-Video-Tutorial

Das obige ist der detaillierte Inhalt vonWas ist MySQL einzigartig?. 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