在phpmyadmin中创建过程时出错

时间:2017-11-12 18:44:59

标签: php mysql sql stored-procedures phpmyadmin

我正在开发一个php项目,我仍然是错误调试的新手。 每当我尝试执行以下代码时

CREATE PROCEDURE insertData(Name varchar(255),Description text)
BEGIN
INSERT INTO categories(name,description) VALUES (Name,Description);
END

我收到错误声明(在phpmyadmin中)

MySQL说:文档

  

#1064 - 您的SQL语法出错;检查与您的MariaDB服务器版本对应的手册,以便在第3行的''附近使用正确的语法

1 个答案:

答案 0 :(得分:0)

尝试使用DELIMITER声明:

DELIMITER $$

CREATE PROCEDURE insertData (
    in_Name varchar(255),
    in_Description text
)
BEGIN
    INSERT INTO categories(name, description)
        VALUES (in_Name, in_Description);
END;$$

DELIMITER ;

请注意,我还在输入参数中重命名,因此它们不太可能与列名混淆。在编写存储过程和函数时,这是一种很好的做法。