在存储过程代码
as
下面加一行
set nocount on
试试,也许可以,不行的话只能贴出存储过程代码了

解决方案 »

  1.   

    查询分析器中调用没错,证明存储过程应该没写错.可能的原因是这样的,存储过程的输出结果信息影响了正确的结果.你试试:在存储过程的as后加下面这句看能否解决问题:set nocount on另外,可能的话,帖出你的存储过程,看看问题是否确实与存储过程的关
      

  2.   

    Basically this is because stored procedures actually return dummy resultset information from various commands during execution and prior to RETURNing with the output parameter. The SET NOCOUNT ON option is preventing it sending these other messages. I presume these were interfering with the interpretation of information coming from the procedure and preventing the procedure producing them ensured that the value you required did get picked up properly.It is quite a common practive to use this command in stored procedures for performance purposes also.
      

  3.   

    你的存储过程中有没有存储过程嵌套?先这样测试,写一个简单的存储过程:
    create proc test
    as
    select name from sysobjects
    go--然后用水晶报表来调用这个存储过程如果没有问题,证明问题应该出在存储过程上,帖出存储过程找原因
    如果有问题,证明水晶报表不支持存储过程.
      

  4.   

    你的存储过程中有没有存储过程嵌套?先这样测试,写一个简单的存储过程:
    create proc test
    as
    select name from sysobjects
    go--然后用水晶报表来调用这个存储过程如果没有问题,证明问题应该出在存储过程上,帖出存储过程找原因
    如果有问题,证明水晶报表不支持存储过程.
      

  5.   

    游标,fetch next from aa 
    写成fetch next from aa into @k...
      

  6.   

    在sqlserver中,使用一个connection来进行多次并发操作的时候,如果这个connection比较繁忙,在firehose(只向前读取并只读的)状态,必须等待connection完成才能做其它任何操作,包括sp_cursorclose.这个时候,系统关闭游标失败,但没有任何提示信息,也不会有错误信息反映到sqlserver中.可能会导致没有任何警告的状态下,游标一直在数据库中处于打开状态。这种状况可能导致2方面结果,一种是游标被留在数据库中占用内存并一直锁定它所操作的纪录,另外一种是在这种状态下,如果试图执行non-firehose的statement,将会发生莫名其妙的(for no apparent reason)发生以下错误:
    SQLState: 24000 [Microsoft][ODBC SQL Server Driver]Invalid cursor state 所以关闭游标之前要确认所有由firehose操作导致的结果是否都已经完成,强烈建议大家尽量不要使用游标操作大数据量的并发操作.
      

  7.   

    同意  laughsmile(海边的星空) 的说法
    不过好象有点.......
     
      

  8.   

    問題尚未解決。
    我的存儲過程中沒有用到cursor
    就是簡單的select   join 。等語句(雖然很長但是沒有複雜之処)
    在sqlserver中。這個提示消息是比較讓人頭痛的一個
    大家可以看我粘貼的論壇裏有的人是因爲重新命名table或者是增加欄位。
    我測試過 zjcxc(邹建) 測試沒有問題。。
    九點結帳。給大家分。。
    解決不了算了根據以往的經驗過幾天就正常了。
    我再慢慢找原因。。
      

  9.   

    那看你这样说,应该问题还是出在数据库上.会否数据库有损坏?楼主可以用dbcc checkdb('数据库名') 检测一下.