问题描述:
查询语句为“SELECT * FROM [远程服务名].[库名].[dbo].[表名],
结果在SQL的查询分析器中正常执行,但把此语句放到存储过程中执行则
出现如下错误“异类查询要求为连接设置 ANSI_NULLS 和 ANSI_WARNINGS 选项。
这将确保一致的查询语义。请启用这些选项,然后重新发出查询。
[SQLSTATE 42000](错误 7405). 步骤失败。”,
即使执行“SET ANSI_WARNINGS ON,SET ANSI_NULLS ON"语句也不行。
解决办法:
1.可以使用 opendatasource,在onlinehelp里面有具体描述
用OpenDataSource
SELECT *
FROM OPENDATASOURCE(
'SQLOLEDB',
'Data Source=ServerName;User ID=sa;Password='
).AWFI.DBO.TEMP
2.但上述方法无法解决企业管理器里面创建存储过程时的提示信息
SET ANSI_WARNINGS ON
SET ANSI_NULLS ON
go
可以在存储过程create语句之前添加如上语句即可
查询语句为“SELECT * FROM [远程服务名].[库名].[dbo].[表名],
结果在SQL的查询分析器中正常执行,但把此语句放到存储过程中执行则
出现如下错误“异类查询要求为连接设置 ANSI_NULLS 和 ANSI_WARNINGS 选项。
这将确保一致的查询语义。请启用这些选项,然后重新发出查询。
[SQLSTATE 42000](错误 7405). 步骤失败。”,
即使执行“SET ANSI_WARNINGS ON,SET ANSI_NULLS ON"语句也不行。
解决办法:
1.可以使用 opendatasource,在onlinehelp里面有具体描述
用OpenDataSource
SELECT *
FROM OPENDATASOURCE(
'SQLOLEDB',
'Data Source=ServerName;User ID=sa;Password='
).AWFI.DBO.TEMP
2.但上述方法无法解决企业管理器里面创建存储过程时的提示信息
SET ANSI_WARNINGS ON
SET ANSI_NULLS ON
go
可以在存储过程create语句之前添加如上语句即可