无法在存储过程phpmyadmin中声明变量MySQL的

时间:2016-02-09 11:06:24

标签: php mysql phpmyadmin

我想创建一个包含变量的存储过程,所以我做了这个

CREATE PROCEDURE SPTest()
BEGIN
    DECLARE @var INT;
END

但它给了我一个错误

#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '@var INT' at line 3

我已经尝试了stackoverflow的所有答案,我正在使用phpmyadmin版本4.5.4.1并且它说是最新的。我怎么解决这个问题? 提前致谢

2 个答案:

答案 0 :(得分:0)

使用delimiter

delimiter 
CREATE PROCEDURE SPTest()
BEGIN
    DECLARE @var INT;
END
| 
delimiter ;

答案 1 :(得分:0)

我相信你的问题是双重的; MySQL中似乎不支持在变量名中使用@,由于明显的phpMyAdmin bug而导致phpMyAdmin失败,即使SQL有效也是如此。

我在命令行运气时使用了这句话:

DELIMITER &
CREATE PROCEDURE SPTest()
BEGIN
    DECLARE v INT;
END
&
DELIMITER ;