วิธีลบคอลัมน์ทั้งหมดในตาราง MySQL
วิธีที่ง่ายที่สุดและเร็วที่สุดคือใช้คำสั่ง DROP TABLE ซึ่งจะลบทั้งตาราง โครงสร้าง ข้อมูล และดัชนีทั้งหมดทิ้งไป
DROP TABLE yourTableName;
ตัวอย่างการใช้งาน
สร้างตารางที่มีหลายคอลัมน์:
mysql> create table DemoTable (
StudentId int NOT NULL AUTO_INCREMENT PRIMARY KEY,
StudentFirstName varchar(20),
StudentLastName varchar(20),
StudentAge int,
StudentAddress varchar(200),
StudentCountryName varchar(30),
StudentDateOfBirth datetime
);
ตรวจสอบโครงสร้าง:
mysql> desc DemoTable;
+--------------------+--------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +--------------------+--------------+------+-----+---------+----------------+ | StudentId | int(11) | NO | PRI | NULL | auto_increment | | StudentFirstName | varchar(20) | YES | | NULL | | | StudentLastName | varchar(20) | YES | | NULL | | | StudentAge | int(11) | YES | | NULL | | | StudentAddress | varchar(200) | YES | | NULL | | | StudentCountryName | varchar(30) | YES | | NULL | | | StudentDateOfBirth | datetime | YES | | NULL | | +--------------------+--------------+------+-----+---------+----------------+
ลบทั้งตาราง (รวมคอลัมน์ทั้งหมด):
mysql> drop table DemoTable; Query OK, 0 rows affected (0.37 sec)
ทางเลือกอื่น (หากต้องการเก็บตารางไว้แต่ลบคอลัมน์):
-- ลบคอลัมน์ทีละตัว ALTER TABLE DemoTable DROP COLUMN StudentFirstName; ALTER TABLE DemoTable DROP COLUMN StudentLastName; -- ... ทำซ้ำสำหรับทุกคอลัมน์ยกเว้น Primary Key -- หรือสร้างตารางใหม่โครงสร้างเดียวกันแต่ไม่มีคอลัมน์เก่า CREATE TABLE DemoTable_new LIKE DemoTable; ALTER TABLE DemoTable_new DROP COLUMN ...; RENAME TABLE DemoTable TO DemoTable_old, DemoTable_new TO DemoTable;
คำเตือน: DROP TABLE เป็นการกระทำที่ไม่สามารถย้อนกลับได้ (Irreversible) ควรสำรองข้อมูล (Backup) ก่อนทำเสมอ