Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> MySQL

วิธี TRUNCATE ตารางที่มี Foreign Key ใน MySQL อย่างถูกต้อง

เมื่อต้องการ TRUNCATE ตารางที่มีความสัมพันธ์ Foreign Key ต้องปิดการตรวจสอบ Foreign Key ชั่วคราวก่อน รูปแบบ:

SET FOREIGN_KEY_CHECKS = 0;
TRUNCATE TABLE yourTableName1;
TRUNCATE TABLE yourTableName2;
...
TRUNCATE TABLE yourTableNameN;
SET FOREIGN_KEY_CHECKS = 1;

ตัวอย่างการใช้งาน

mysql> SET FOREIGN_KEY_CHECKS = 0;
mysql> TRUNCATE TABLE skiplasttenrecords;
mysql> TRUNCATE TABLE searchtextdemo;
mysql> SET FOREIGN_KEY_CHECKS = 1;

ตรวจสอบว่าข้อมูลถูกลบหมดแล้ว

mysql> SELECT * FROM searchtextdemo;
Empty set (0.00 sec)

mysql> SELECT * FROM skiplasttenrecords;
Empty set (0.00 sec)

คำเตือน: ต้องเปิด FOREIGN_KEY_CHECKS กลับเป็น 1 หลังเสร็จสิ้น เพื่อรักษาความสมบูรณ์ของข้อมูล (Data Integrity) ในการทำงานต่อไป