我使用mariadb和heidisql来执行sql:
DECLARE @AccountID INT;
插入帐户(first_name,mi,last_name,email,is_admin,is_enabled,date_created) 值('testfirstname','a','testlastname','user @email.com',1,1,NOW());
设置@AccountID = Last_Insert_Id();
我一直收到错误:
QL错误(1064):您的SQL语法出错;检查与您的MariaDB服务器版本对应的手册,以便在第1行的“@AccountID INT”附近使用正确的语法* /
我正在查看Declare的用法,但它说它在函数中使用。我已经在DECLARE之前尝试了BEGIN / END,之后也遇到了同样的错误 我是mysql语法的新手,这可以在sql server中使用。所以,如果有人能让我知道我的错误,我们将不胜感激。
由于
答案 0 :(得分:4)
我正在使用mariadb版本10.0.19
描述了上述问题并且具有简单的解决方案
here: Delimiters in the mysql Client
简而言之:
DELIMITER //
像往常一样创造功能
BEGIN
像往常一样
END
的 //
DELIMITER;
(已接受的解决方案没有奏效!)
答案 1 :(得分:2)
删除DECLARE
。没有必要。