2017-06-02 54 views
0

工作:SQL语法错误,在使用MySQL的phpMyAdmin的</p> <p><strong>SQL</strong> CREATE PROCEDURE

drop PROCEDURE if EXISTS mi; 

CREATE PROCEDURE mi() //<-- line 3 
BEGIN 
    INSERT INTO User (`name` , `password`) VALUES ('value1', 'value2'); 
    SET out_param = LAST_INSERT_ID(); 
END 

CALL mi(); 

的 '降' 是多测试

我们有表Userid primary keyname varcharpassword varchar

错误

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

感谢您的任何帮助!

+1

MySQL <> SQL Server,您需要删除sql标记。 – Chuck

+0

谢谢你让我知道,标签已删除 –

+0

在创建语句前添加“delimiter $$”,在结束语句后添加“$$”, –

回答

1

默认情况下,mysql本身将分号识别为语句分隔符,因此您必须临时重新定义分隔符以使mysql将整个存储的程序定义传递给服务器。要重新定义mysql分隔符,请使用delimiter命令。

你可以更详细地阅读关于这个create procedure

在创建语句前添加“delimiter //”,并在结束语句后添加“//”以执行您的过程。您也可以使用任何其他分隔符。

+0

对你有帮助吗? –

0

在phpMyAdmin中,您可以在SQL页面的底部附近设置分隔符,页面的相同区域上有一行作为Go按钮。将分隔符更改为任何内容($$是常见的),然后将其添加到脚本的末尾。

相关问题