ตัวคั่น MySQL เกิดขึ้นเมื่อคุณใช้ตัวคั่นไพพ์ (|) กับเครื่องหมายอัฒภาค (;) และใช้ MySQL เวอร์ชันต่ำกว่า 8.0.12
MySQL ถือว่าไพพ์ (|) เป็นตัวคั่นหนึ่งตัวและเครื่องหมายอัฒภาค (;) เป็นตัวคั่นอีกตัวหนึ่ง ดังนั้น อย่าสับสนระหว่างตัวคั่น MySQL กับไพพ์และอัฒภาค
หมายเหตุ :ที่นี่ เราใช้ MySQL เวอร์ชัน 8.0.12 ตัวคั่นท่อทำงานได้ดีกับเครื่องหมายอัฒภาค หากคุณใช้เวอร์ชันที่ต่ำกว่า 8.0.12 จะทำให้เกิดข้อผิดพลาดเกี่ยวกับตัวคั่น
นี่คือการทำงานของตัวคั่น MySQL:
mysql> ตัวคั่น |;mysql> สร้างโพรซีเดอร์ getSumOfTwoNumbers() -> เริ่ม -> เลือก 2+3 เป็น TotalValue; -> จบ; -> |;ตกลง 0 แถวได้รับผลกระทบ (0.17 วินาที) mysql> ตัวคั่น;
ตอนนี้เรียกกระบวนงานที่เก็บไว้โดยใช้คำสั่งโทร แบบสอบถามมีดังนี้:
mysql> โทร getSumOfTwoNumbers();
ต่อไปนี้เป็นผลลัพธ์:
<ก่อนหน้า>+-----------+| มูลค่ารวม |+-----------+| 5 |+------------+1 แถวในชุด (0.00 วินาที) แบบสอบถามตกลง 0 แถวได้รับผลกระทบ (0.01 วินาที)อย่าบรรลุตัวคั่นไพพ์ด้านบนด้วยเซมิโคลอนเพราะในเซมิโคลอนของ MySQL เป็นตัวคั่นเริ่มต้นซึ่งบอกจุดสิ้นสุดของคำสั่งใน MySQL ดังนั้น อัฒภาคสามารถใช้เพื่อกลับจากกระบวนงานที่เก็บไว้ของ MySQL เมื่อคุณเขียนหลายคำสั่ง
นี่คือตัวอย่างการเปลี่ยนแปลงตัวคั่น
ขั้นแรก ใช้ตัวคั่นท่อ (|) หากคุณต้องการตั้งค่าตัวคั่นเป็นไพพ์ ให้ใช้เคียวรีต่อไปนี้
mysql> DELIMITER |
แบบสอบถามเพื่อสร้างกระบวนงานที่เก็บไว้มีดังนี้:
mysql> DELIMITER |mysql> สร้างโพรซีเดอร์ Demo() -> start -> เลือก 2*3 เป็น TotalMultiplication -> จบ; -> |แบบสอบถามตกลง 0 แถวได้รับผลกระทบ (0.12 วินาที)
ตอนนี้เปลี่ยนตัวคั่นด้วยอัฒภาค หากคุณต้องการตั้งค่าตัวคั่นเป็นอัฒภาค ให้ใช้แบบสอบถามต่อไปนี้
แบบสอบถามมีดังนี้:
mysql> ตัวคั่น;