我无法理解Mysql
中查询的问题。
我会在这里写我的查询。
CREATE PROCEDURE PR_INSERT_DATA (
IN prCode INT,
IN prName VARCHAR(250),
IN prAuthor varchar(250),
IN prCategory varchar(250),
IN prMaterial varchar(250),
IN prPrice varchar(7),
IN prDescription varchar(1000),
IN prComment varchar(500))
BEGIN
INSERT INTO `product`(`CODE`,`NAME`,`AUTHOR`, `CATEGORY`, `MATERIAL`, `PRICE`, `DESCRIPTION`, `COMMENT`)
VALUES (`prCode`
,`prName`
,`prAuthor`
,`prCategory`
,`prMaterial`
,`prPrice`
,`prDescription`
,`prComment`)
它给了我这个错误:
#1064 - 您的SQL语法出错;查看与您的MariaDB服务器版本对应的手册,以获得在''附近使用的正确语法。在第19行
Here is表的结构。
答案 0 :(得分:2)
您需要更改标准分隔符';'到另一个。原因是因为我们希望将存储过程作为一个整体传递给服务器,而不是让MySQL一次解释每个语句。
DELIMITER //
CREATE PROCEDURE PR_INSERT_DATA (
IN prCode INT,
IN prName VARCHAR(250),
IN prAuthor varchar(250),
IN prCategory varchar(250),
IN prMaterial varchar(250),
IN prPrice varchar(7),
IN prDescription varchar(1000),
IN prComment varchar(500))
BEGIN
INSERT INTO `product`(`CODE`,`NAME`,`AUTHOR`, `CATEGORY`, `MATERIAL`, `PRICE`, `DESCRIPTION`, `COMMENT`)
VALUES (`prCode` ,`prName`,`prAuthor`,`prCategory` ,`prMaterial`,`prPrice`,`prDescription`,`prComment`);
END//