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

วิธีแก้ไขข้อผิดพลาด MySQL “คุณมีข้อผิดพลาดในไวยากรณ์ SQL ของคุณ; ตรวจสอบคู่มือที่สอดคล้องกับเวอร์ชันเซิร์ฟเวอร์ MySQL ของคุณสำหรับไวยากรณ์ที่ถูกต้องที่จะใช้ใกล้ ๆ หรือไม่?


เพื่อหลีกเลี่ยงข้อผิดพลาดประเภทนี้ในกระบวนงานที่เก็บไว้ของ MySQL คุณต้องเปลี่ยนตัวคั่น; ถึง //.

สมมติว่าคุณกำลังใช้กระบวนงานที่เก็บไว้ หรือทริกเกอร์ หรือแม้แต่ฟังก์ชัน คุณจำเป็นต้องเปลี่ยนตัวคั่น ไวยากรณ์มีดังนี้

DELIMITER // CREATE PROCEDURE yourProcedureName() เริ่มต้น Statement1, . NEND;//DELIMITER;

เพื่อให้เข้าใจไวยากรณ์ข้างต้น ให้เราสร้างกระบวนงานที่เก็บไว้ แบบสอบถามเพื่อสร้างกระบวนงานที่เก็บไว้มีดังต่อไปนี้ -

mysql> DELIMITER //mysql> CREATE PROCEDURE sp_getAllRecords()-> BEGIN-> SELECT *FROM employeetable;-> END;-> //Query OK, 0 แถวได้รับผลกระทบ (0.23 วินาที)mysql> DELIMITER;

เรียกกระบวนงานที่เก็บไว้โดยใช้คำสั่ง CALL ไวยากรณ์มีดังนี้

CALL yourStoredProcedureName();

ตอนนี้เรียกขั้นตอนข้างต้นที่ส่งกลับระเบียนทั้งหมดของตารางพนักงาน แบบสอบถามมีดังนี้

mysql> CALL sp_getAllRecords();

ต่อไปนี้เป็นผลลัพธ์

<ก่อนหน้า>+-----------+--------------+----------------+| รหัสพนักงาน | ชื่อพนักงาน | เงินเดือนพนักงาน |+------------+--------------+----------------+| 2 | บ๊อบ | 1000 || 3 | แครอล | 2500 |+-----------+--------------+----------------+2 แถว ในชุด (0.00 วินาที) แบบสอบถามตกลง 0 แถวได้รับผลกระทบ (0.02 วินาที)