如何在 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 的字段。
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
你说呢...
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯