ใช้ ALTER TABLE ... DROP PRIMARY KEY, CHANGE column column datatype เพื่อลบ PK และ AUTO_INCREMENT พร้อมกัน
ไวยากรณ์
ALTER TABLE yourTableName DROP PRIMARY KEY, CHANGE yourColumnName yourColumnName dataType;
ตัวอย่างการใช้งาน
สร้างตาราง removePrimaryKey พร้อม PK และ AUTO_INCREMENT:
mysql> CREATE TABLE removePrimaryKey (
-> StudentId INT NOT NULL AUTO_INCREMENT,
-> StudentFirstName VARCHAR(20),
-> StudentLastName VARCHAR(20),
-> PRIMARY KEY(StudentId)
-> );
ตรวจสอบโครงสร้างก่อนเปลี่ยน (DESC)
mysql> DESC removePrimaryKey;
+------------------+-------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +------------------+-------------+------+-----+---------+----------------+ | StudentId | int(11) | NO | PRI | NULL | auto_increment | | StudentFirstName | varchar(20) | YES | | NULL | | | StudentLastName | varchar(20) | YES | | NULL | | +------------------+-------------+------+-----+---------+----------------+
คำสั่งลบ PK และ AUTO_INCREMENT
mysql> ALTER TABLE removePrimaryKey
-> DROP PRIMARY KEY,
-> CHANGE StudentId StudentId INT;
ตรวจสอบโครงสร้างหลังเปลี่ยน
mysql> DESC removePrimaryKey;
+------------------+-------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +------------------+-------------+------+-----+---------+-------+ | StudentId | int(11) | YES | | NULL | | | StudentFirstName | varchar(20) | YES | | NULL | | | StudentLastName | varchar(20) | YES | | NULL | | +------------------+-------------+------+-----+---------+-------+
ผลลัพธ์: คอลัมน์ Key และ Extra ว่างเปล่าแล้ว (ไม่มี PRI, ไม่มี auto_increment)