2010-05-12 57 views
0

我第一次搞亂存儲過程,但無法創建簡單的選擇!我使用phpMyAdmin,這是我的SQL:無法創建存儲過程

DELIMITER // 
CREATE PROCEDURE test_select() 
BEGIN 
SELECT * FROM products LIMIT 10; 
END // 
DELIMITER ; 

提交在此之後,我的本地做了一些思考的時間過長...並最終裝入沒有叫/phpmyadmin/import.php內容的頁面。重新加載phpMyAdmin並嘗試調用該過程後:

CALL test_select(); 

我得到一個「PROCEDURE does not exist」錯誤。有任何想法嗎?

回答

3

嘗試使用phpMyAdmin的定界符字段,如下面的截圖:

Trouble creating stored procedure http://img715.imageshack.us/img715/1152/mysproc.png

簡單地說在查詢窗口如下:

CREATE PROCEDURE test_select() 
BEGIN 
    SELECT * FROM products LIMIT 10; 
END 

另外請注意,某些舊版本的phpMyAdmin存在錯誤,當您調用包含SELECT的存儲過程時可能會導致錯誤來自phpMyAdmin的聲明。

您可能要檢查的進一步閱讀以下文章:

此錯誤隻影響phpMyAdmin的,但你仍然可以調用存儲程序從其他地方。

+0

這個問題實際上是我在查詢時直接使用DELIMITER,當時我應該使用phpMyAdmin的UI來更改分隔符。你的第二個鏈接給了我答案,所以+1。正如它發生我也有phpMyAdmin錯誤。呸! – Mathew 2010-05-12 16:54:31