2016-12-01 64 views
0

我的託管服務提供商(JustHost)使用MySQL,並且具有奇特的功能,一旦您通過PHP MyAdmin創建存儲過程,它就永遠不會再被修改或導出。 screenshot from php my admin
我嘗試了PHP MyAdmin中的「SELECT ROUTINE_DEFINITION ...」,但它只是返回null。成功訪問此過程的唯一方式似乎是一個Call。它在PHP MyAdmin和我的應用程序中像一個沒有問題的魅力,但我無法訪問實際的SQL。是否有另一個SQL腳本可以運行以獲取內容?或者,因爲它是從PHP(也就是我的應用程序)開始工作的,我可以使用PHP函數將存儲過程的內容回顯到瀏覽器頁面上嗎?從PHP查看存儲過程的內容

+0

當我導出整個數據庫的過程不存在 – David

+0

我只有一個數據庫,我使用的一切...程序看起來將列在該數據庫下 – David

回答

0

您應該可以使用SQL(PHP MyAdmin或編寫自己的PHP腳本)來執行此操作。使用SHOW CREATE PROCEDURE來查看過程的定義。我不確定你使用的是什麼版本的MySQL,所以YMMV參考手冊:http://dev.mysql.com/doc/refman/5.7/en/show-create-procedure.html

你在屏幕截圖中遇到的錯誤意味着你運行的SQL看不到過程...你是否在程序所在的同一個數據庫中運行它?

+0

我做了「SHOW CREATE PROCEDURE Calendarmonth」,它只是給了我一個null – David

+0

使用MySQL 5.6.32-78.1 – David

+0

在這種情況下,請看這裏:http://dba.stackexchange.com/questions/22817/show-procedure-code-in-mysql有一些代碼可能是當show create procedure不起作用時有用。我現在無法訪問MySQL框,否則我會嘗試一下 - 對不起! –