Heim > Datenbank > MySQL-Tutorial > Hauptteil

Wie lösche ich den Primärschlüssel in MySQL?

青灯夜游
Freigeben: 2020-09-16 09:34:57
Original
32343 Leute haben es durchsucht

Was sollten Sie nach dem Festlegen eines Primärschlüssels in einer Tabelle tun, wenn Sie den Primärschlüssel löschen möchten? Im folgenden Artikel erfahren Sie, wie Sie den Primärschlüssel in MySQL löschen. Ich hoffe, dass er für Sie hilfreich ist.

Wie lösche ich den Primärschlüssel in MySQL?

Werfen wir zunächst einen Blick auf die Syntax zum Löschen des Primärschlüssels:

ALTER  TABLE  TABLE_NAME  DROP  PRIMARY  KEY;
Nach dem Login kopieren

Beim Löschen eines Primärschlüssels sind zwei Situationen zu berücksichtigen Schlüssel in MySQL:

1. Die Primärschlüsselspalte unterliegt keinen Einschränkungen und der Primärschlüssel kann direkt gelöscht werden

Beispiel:

mysql> create table test1_3(
    -> id int not null primary key,
    -> name char(10)
    -> );
Query OK, 0 rows affected (0.01 sec)
Nach dem Login kopieren

Wir können Drop to direkt verwenden Löschen Sie den Primärschlüssel

mysql> alter table test1_3 drop primary key;
Query OK, 0 rows affected (0.02 sec)
Records: 0  Duplicates: 0  Warnings: 0
Nach dem Login kopieren

2. Wenn es sich um den Primärschlüssel der automatischen Inkrementierung handelt (AUTO_INCREMENT-Attribut)

Beispiel:

mysql> create table test1_2(
    -> id int not null  auto_increment,
    -> name char(10),-> primary key(id)
    -> );
Query OK, 0 rows affected (0.00 sec)

mysql> desc test1_2;
+-------+----------+------+-----+---------+----------------+
| Field | Type     | Null | Key | Default | Extra          |
+-------+----------+------+-----+---------+----------------+
| id    | int(11)  | NO   | PRI | NULL    | auto_increment |
| name  | char(10) | YES  |     | NULL    |                |
+-------+----------+------+-----+---------+----------------+
2 rows in set (0.00 sec)
Nach dem Login kopieren

Bei direktem Löschen wird ein Fehler angezeigt gemeldet

mysql> alter table test1_2 drop primary key;
Nach dem Login kopieren

Ausgabe:

ERROR 1075 (42000): Incorrect table definition; there can be only one auto column and it must be defined as a key               
#这说明此列是自动增长列,无法直接删除
Nach dem Login kopieren

Die Attribute der Spalte sind noch vorhanden. Bei AUTO_INCREMENT müssen Sie zunächst das automatische Wachstumsattribut dieser Spalte entfernen, bevor Sie den Primärschlüssel löschen können.

mysql> alter table test1_2 modify id int;
Query OK, 0 rows affected (0.03 sec)
Records: 0  Duplicates: 0  Warnings: 0

mysql> alter table test1_2 drop primary key;
Query OK, 0 rows affected (0.02 sec)
Records: 0  Duplicates: 0  Warnings: 0
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWie lösche ich den Primärschlüssel in MySQL?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage