我创建了一个MySQL脚本,该脚本创建了一个存储过程,该过程在给定存储过程的IN参数的情况下将新行插入到表中。但是,当我们尝试运行脚本时,会显示以下错误:
第22行的错误1064(42000):您的SQL语法出错; 检查与您的MySQL服务器版本对应的手册 正确的语法在''第3行附近使用
这基本上是脚本文件中的存储过程:
CREATE PROCEDURE 'packagename'.`procedureName`
(IN param1 DATE,
IN param2 TIME,
IN param3 VARCHAR(45),
IN param4 VARCHAR(100))
BEGIN
INSERT INTO packagename.table (`param1`, `param2`, `param3`, `param4`)
VALUES (param1, param2, param3, param4);
END;
有什么想法吗?
答案 0 :(得分:1)
DELIMITER
table
中table
,请使用反引号将其转义查询,
DELIMITER $$
CREATE PROCEDURE `packagename`.`procedureName`
(
IN param1 DATE,
IN param2 TIME,
IN param3 VARCHAR(45),
IN param4 VARCHAR(100)
)
BEGIN
INSERT INTO packagename.`table` (`param1`, `param2`, `param3`, `param4`)
VALUES (param1, param2, param3, param4);
END $$
DELIMITER ;