当我OPENROWSET
在SQL Server 2000中运行查询时,它可以工作。
但是,SQL Server 2008中的同一查询会产生以下错误:
SQL Server阻止访问组件“ Ad Hoc Distributed Queries”的STATEMENT“ OpenRowset / OpenDatasource”,因为此组件的安全配置已关闭此组件。系统管理员可以通过使用sp_configure启用“临时分布式查询”的使用
顺便说一句,您最好还是注意警告并更改您的SQL代码以使用链接服务器而不是OPENROWSET。
—
RBarryYoung
@RBarryYoung这并不是真正的“警告”-只是一条通知,指出它未启用。启用此功能有什么危险?
—
康拉德
如果恶意用户能够在某处注入SQL,则打开此选项可能使他们能够探测自己选择的数据文件。如果将其设置为链接服务器,则仅公开特定文件-链接服务器(并且您具有可以使用的集成SQL Server安全性,等等)。
—
Mike M
但我确实喜欢在内部测试和数据迁移中使用此选项……因此寻找再次使用它的方法:)
—
Mike M