yii调用存储过程报错的解决方法

这篇文章给大家分享的是有关yii调用存储过程报错的解决方法的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

创新互联基于分布式IDC数据中心构建的平台为众多户提供绵阳服务器托管 四川大带宽租用 成都机柜租用 成都服务器租用。

yii调用存储过程报错的解决办法:首先查看“MYPROC”语句调用后抛出的异常情况;然后根据信息提示,在存储过程中添加语句为“SET NOCOUNT ON;”即可。

yii调用存储过程报错:

YII:调用MSSQL2005存储过程出现“The active result for the query contains no fields.”

在用YII调用MSSQL2005的存储过程时,我需要获取返回值,利用了如下语句调用存储过程“MYPROC”:

DECLARE @return_value int; exec @return_value = MYPROC; select @return_value;

调用后抛出以下异常(用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 无法执行 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)

根据以下信息提示,我在存储过程中添加了这条语句就正常了:

SET NOCOUNT ON;

感谢各位的阅读!关于“yii调用存储过程报错的解决方法”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!


本文标题:yii调用存储过程报错的解决方法
分享网址:http://pwwzsj.com/article/gissjc.html