补充一点:
整个SQL语句在MS SqlServer Management Studio里面执行正确,没有错误。

解决方案 »

  1.   

    用SET NOCOUNT ON;把一些无用记录集关了,可以用ADO助手试试你的SQL,在用DATAGRID显示的时候试试点击下一个记录集看是否是你要的记录集。
    这么复杂的SQL,建议写成存储过程会好一些。
      

  2.   

    看来大家都回家过年了啊。一个人也没有。
    不过还好,我已经找到答案了。
    在查询语句之前加一句 “SET NOCOUNT ON”就ok了。
    网上资料显示SET NOCOUNT ON的作用是:在返回结果集时,不返回提示受影响的行的那些垃圾消息。本人对表作了插入表记录操作,这样会引起影响行的提示消息出来,故会影响最终返回的结果记录集,设置ON,即可屏蔽提示受影响行的消息出现,完整地返回你的结果集数据流。