加入收藏 | 设为首页 | 会员中心 | 我要投稿 常州站长网 (https://www.0519zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

sql – 为什么在本地服务器上使用OPENQUERY不好?

发布时间:2021-03-06 13:22:52 所属栏目:MsSql教程 来源:网络整理
导读:我正在编写一个应该在一堆服务器上运行的脚本,并从中选择一堆数据,包括本地服务器. SELECT我需要的数据所需的SQL非常复杂,所以我正在编写一种特殊的视图,并使用OPENQUERY语句来获取数据,所以最终我最终循环遍历这样的语句: exec('INSERT INTO tabl SELECT

我正在编写一个应该在一堆服务器上运行的脚本,并从中选择一堆数据,包括本地服务器. SELECT我需要的数据所需的SQL非常复杂,所以我正在编写一种特殊的视图,并使用OPENQUERY语句来获取数据,所以最终我最终循环遍历这样的语句:

exec('INSERT INTO tabl SELECT * FROM OPENQUERY(@Server,@AdHocView)')

但是,我听说在本地服务器上使用OPENQUERY是不受欢迎的.有人可以详细说明原因吗?

解决方法

>虽然查询可能返回多个结果集,但OPENQUERY仅返回第一个结果集.
> OPENQUERY不接受其参数的变量.
> OPENQUERY不能用于在链接服务器上执行扩展存储过程.但是,可以使用由四部分组成的名称在链接服务器上执行扩展存储过程.
>如果在同一脚本中使用sp_addlinkedserver存储过程,则远程服务器上使用的凭据将硬编码到脚本中,对于拥有副本的任何人都可以看到

参考:

> OPENQUERY

(编辑:常州站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读