這篇文章給大家分享的是有關(guān)yii調(diào)用存儲過程報錯的解決方法的內(nèi)容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。
創(chuàng)新互聯(lián)基于分布式IDC數(shù)據(jù)中心構(gòu)建的平臺為眾多戶提供綿陽服務(wù)器托管 四川大帶寬租用 成都機柜租用 成都服務(wù)器租用。
yii調(diào)用存儲過程報錯的解決辦法:首先查看“MYPROC”語句調(diào)用后拋出的異常情況;然后根據(jù)信息提示,在存儲過程中添加語句為“SET NOCOUNT ON;”即可。
yii調(diào)用存儲過程報錯:
YII:調(diào)用MSSQL2005存儲過程出現(xiàn)“The active result for the query contains no fields.”
在用YII調(diào)用MSSQL2005的存儲過程時,我需要獲取返回值,利用了如下語句調(diào)用存儲過程“MYPROC”:
DECLARE @return_value int; exec @return_value = MYPROC; select @return_value;
調(diào)用后拋出以下異常(用var_dump打印出來):
object(CDbException)[50] public 'errorInfo' => array 0 => string 'IMSSP' (length=5) 1 => int -15 2 => string 'The active result for the query contains no fields.' (length=51) protected 'message' => string
'CDbCommand 無法執(zhí)行 SQL 語句:
SQLSTATE[IMSSP]: The active result for the query contains no fields.. The SQL statement executed was: DECLARE @return_value int;exec @return_value = MYPROC @ActivityID = :ActivityID ;select @return_value;' (length=257)
根據(jù)以下信息提示,我在存儲過程中添加了這條語句就正常了:
SET NOCOUNT ON;
感謝各位的閱讀!關(guān)于“yii調(diào)用存儲過程報錯的解決方法”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,讓大家可以學(xué)到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!