คำสั่ง CREATE TABLE IF NOT EXISTS จะสร้างตารางก็ต่อเมื่อยังไม่มีอยู่แล้ว ป้องกัน Error "Table already exists" และช่วยให้สคริปต์รันซ้ำได้ (Idempotent)
รูปแบบคำสั่ง (Syntax)
CREATE TABLE IF NOT EXISTS yourTableName (
yourColumnName1 dataType,
...
);
INSERT INTO yourTableName values(yourValue1, ...);
ตัวอย่างสร้างตารางพร้อม Primary Key
mysql> create table if not exists DemoTable (
StudentId int NOT NULL AUTO_INCREMENT PRIMARY KEY,
StudentSubject varchar(100) );
Query OK, 0 rows affected (0.60 sec)
เพิ่มข้อมูลวิชา
mysql> insert into DemoTable(StudentSubject) values('Java');
Query OK, 1 row affected (0.24 sec)
mysql> insert into DemoTable(StudentSubject) values('MySQL');
Query OK, 1 row affected (0.14 sec)
mysql> insert into DemoTable(StudentSubject) values('C');
Query OK, 1 row affected (0.23 sec)
แสดงข้อมูลทั้งหมด
mysql> select * from DemoTable;
+-----------+----------------+ | StudentId | StudentSubject | +-----------+----------------+ | 1 | Java | | 2 | MySQL | | 3 | C | +-----------+----------------+ 3 rows in set (0.00 sec)
คำอธิบาย:
IF NOT EXISTS- ไม่ Error หาตารางมีอยู่แล้ว เหมาะสำหรับ Migration ScriptsAUTO_INCREMENT PRIMARY KEY- สร้าง ID อัตโนมัติ- รันซ้ำหลายครั้งก็ไม่ Error (Idempotent)
ข้อควรระวัง: หากตารางมีอยู่แล้วแต่โครงสร้างต่างกัน (คอลัมน์เพิ่ม/ลด) คำสั่งนี้จะไม่ปรับโครงสร้างให้ ต้องใช้ ALTER TABLE แทน