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

วิธีเปลี่ยน Delimiter ปัจจุบันใน MySQL

ตรวจสอบ 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 กลับเป็น ; ทันที เพื่อไม่ให้สับสนกับคำสั่งปกติ