如何解决 MySQL 错误"您的 SQL 语法有错误;请查看与您的 MySQL 服务器版本相对应的手册\以了解正确的语法?"
mysqlmysqli database
为了避免 MySQL 存储过程中出现此类错误,您需要将分隔符 ; 更改为 //。
假设您正在使用存储过程或触发器甚至函数,那么您需要更改分隔符。语法如下。
DELIMITER // CREATE PROCEDURE yourProcedureName() BEGIN Statement1, . . N END; // DELIMITER ;
为了理解上述语法,让我们创建一个存储过程。创建存储过程的查询如下 -
mysql> DELIMITER // mysql> CREATE PROCEDURE sp_getAllRecords() -> BEGIN -> SELECT *FROM employeetable; -> END; -> // Query OK, 0 rows affected (0.23 sec) mysql> DELIMITER ;
使用 CALL 命令调用存储过程。语法如下。
CALL yourStoredProcedureName();
现在调用上述返回 Employee 表所有记录的过程。查询如下。
mysql> CALL sp_getAllRecords();
以下是输出。
+------------+--------------+----------------+ | EmployeeId | EmployeeName | EmployeeSalary | +------------+--------------+----------------+ | 2 | Bob | 1000 | | 3 | Carol | 2500 | +------------+--------------+----------------+ 2 rows in set (0.00 sec) Query OK, 0 rows affected (0.02 sec)