ตรวจสอบ Delimiter ปัจจุบัน
ใช้คำสั่ง \s (status) เพื่อดู delimiter ปัจจุบัน
mysql> \s
ผลลัพธ์ตัวอย่าง (เห็น Using delimiter: ;):
C:\Program Files\MySQL\MySQL Server 8.0\bin\mysql.exe Ver 8.0.12 ... Using delimiter: ; Server version: 8.0.12 ...
เปลี่ยน Delimiter เป็น //
mysql> DELIMITER //
ตรวจสอบ Delimiter ใหม่
mysql> \s
ผลลัพธ์ (เห็น Using delimiter: //):
... Using delimiter: // ...
เมื่อไหร่ควรเปลี่ยน Delimiter?
- เขียน Stored Procedures, Functions, Triggers, หรือ Events ที่มีหลายคำสั่ง SQL
- ต้องการใช้ semicolon (;) ภายในโค้ดโปรแกรมโดยไม่จบคำสั่ง
ตัวอย่างการใช้งานจริง
DELIMITER //
CREATE PROCEDURE GetUserCount()
BEGIN
SELECT COUNT(*) FROM users;
SELECT COUNT(*) FROM admins;
END //
DELIMITER ;
คำเตือน
หลังเสร็จสิ้นการสร้างโปรแกรมเก็บ (stored program) ควรเปลี่ยน delimiter กลับเป็น ; ทันที เพื่อไม่ให้สับสนกับคำสั่งปกติ