2014-12-03 59 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