2014-12-03 44 views
0

我已经搜索了很多并花费了数小时的时间,但大部分答案似乎更加复杂。我似乎有一些基本的误解,我不知道在哪方面。我使用的MySQL版本34年5月5日,我试图建立一个存储过程,但每当我打电话它,我得到一个错误:MAMP存储过程:命令不同步错误

SELECT 
      s.SCHEMA_NAME, 
      s.DEFAULT_COLLATION_NAME 
       FROM `information_schema`.SCHEMATA s 
       GROUP BY BINARY s.SCHEMA_NAME 
       ORDER BY BINARY `SCHEMA_NAME` ASC 
MySQL said: Documentation 

#2014 - Commands out of sync; you can't run this command now 

我首先定义了非常基本的程序

DROP PROCEDURE IF EXISTS get; 
SET delimiter // 
CREATE PROCEDURE get() 
BEGIN 
    SELECT 'hey' AS col; 
END // 

SET delimiter ; 

和之后尝试拨打电话

CALL get(); 

发生错误时。目前我正在使用phpMyAdmin界面。

如果您能将我指向正确的方向,我将非常高兴!

谢谢

回答

0

最后,我找到了解决方案。我正在OS X上使用不是最新版本的MAMP,它似乎仍然使用不推荐使用的mysql而不使用mysqli。这导致我的问题中提到的存储过程存在一些问题。

但是,更新到当前版本的MAMP解决了问题!

0

使用$ this-> db-> reconnect();通话前存储过程

+0

我正在使用OS X上的MAMP服务器的phpMyAdmin接口。但不幸的是,在调用存储过程之前重新加载接口的页面(或重新启动服务器)并没有帮助。 – seyfe 2014-12-03 15:43:08