永发信息网

如何在 OPENQUERY 中执行更新操作

答案:2  悬赏:30  手机版
解决时间 2021-02-05 15:52
  • 提问者网友:做自己de王妃
  • 2021-02-05 04:08
如何在 OPENQUERY 中执行更新操作
最佳答案
  • 五星知识达人网友:鱼忧
  • 2021-02-05 05:15
在 OPENQUERY 中选择记录用:

SELECt * FROM OPENQUERY (linked_server, "SELECt * FROM
msgs");

那么如何在 OPENQUERY 中执行 INSERT、UPDATe、DELETE 这些更新操作呢?

OPENQUERY (linked_server, "INSERT INTO msgs(...)
VALUES(...)");

以上做法是不正确的,正确做法如下:

INSERT 示例

INSERT OPENQUERY (linked_server, 'SELECT title, content FROM
msgs')
VALUES ('title', 'content');

UPDATe 示例

UPDATE OPENQUERY (linked_server, 'SELECT title, content FROM
msgs WHERe id=1')
SET title = 'newTitle', content = 'newContent';

DELETe 示例

DELETE OPENQUERY (linked_server, 'SELECT id FROM msgs WHERe
id=1');

注意

OPENQUERY 不接受参数变量,也就是说:DELETe OPENQUERY (linked_server, 'SELECT id FROM msgs
WHERe id=' + @id); 是不正确的,但可以这样做:DELETe OPENQUERY (linked_server, 'SELECT id FROM
msgs') WHERe id=@id); 。

T-SQL 中,INSERT 可以省略 INTO,DELETe 也可以省略 FROM。

INSERT 时必须明确 SELECT 的字段。
全部回答
  • 1楼网友:愁杀梦里人
  • 2021-02-05 06:51
你说呢...
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯