SET QUOTED_IDENTIFIER ON 
SET ANSI_NULLS ON 
SET ANSI_WARNINGS ON
set XACT_ABORT onselect * from OPENROWSET('SQLOLEDB','SERVER=servername;uid=sa;password=;Database=aabb','select * from table1')SET ANSI_NULL_DFLT_ON off 
SET ANSI_NULLS off 
SET ANSI_WARNINGS off
set XACT_ABORT off

解决方案 »

  1.   

    当存储过程创建或改变时,将保存 SET QUOTED_IDENTIFIER 和 SET ANSI_NULLS 两者的设置。当执行存储过程时,将启用这些原始设置,并且事后任何客户端会话设置恢复。在存储过程中,只有在存储过程执行后,对 SET ANSI_NULLS 的更改才会生效。 
    与 SQL Server 早期版本相比,应该有不同的结果。使用 SET QUOTED_IDENTIFIER、SET ANSI_NULLS 的一个设置和所有其它相关 SET 选项开发数据库或应用程序。如果客户端会话更改 SET 选项,请在存储过程外这样做。
      

  2.   

    lynx1111
    照你所写的我加上了,可是还是不行 :(
    同样的存储过程你生成了吗
      

  3.   

    Jianli2004(健力) 请问在存储过程外,是在系统的哪个地方修改呢?
      

  4.   

    将存储过程删除.然后再在查询分析器中用SQL语句创建就行了.
      

  5.   

    up,
    以前我碰到过同样问题,涌ZJCXC的方法解决了