首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >更新OPENQUERY失败

更新OPENQUERY失败
EN

Stack Overflow用户
提问于 2011-12-14 04:36:27
回答 2查看 2K关注 0票数 0

我在以下OPENQUERY语句中遇到错误,该语句是我试图对来自SQL Server的MySql数据库执行的。

代码语言:javascript
复制
UPDATE OPENQUERY(MYWPDB, 'SELECT total FROM wp_tt WHERE id = 112121') SET total = 1

错误为“键列信息不足或不正确。更新影响了太多行”。

该语句应将“total”字段更新为值“1”。它是一个整型字段,'id‘是表中的主键。我使用的是SQL Server 2000。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-12-14 12:41:19

事实证明,查询没有任何问题。我试图在存储过程的游标操作中执行语句。我在游标操作之外对它进行了测试,它处理得很好。

然而,由于我仍然需要它在游标中工作,我不得不继续挖掘,最终发现由四部分组成的语法可以做到这一点。因此,查询变成了:

代码语言:javascript
复制
UPDATE MYWPDB...wp_tt SET total = 1 WHERE id = 112121
票数 1
EN

Stack Overflow用户

发布于 2013-09-13 20:23:22

我用一个更新iSeries的openquery也遇到了同样的问题。我的openquery也在游标中。修复方法是在select中包含键列。

所以在你的例子中应该是这样的:

代码语言:javascript
复制
UPDATE OPENQUERY(MYWPDB, 'SELECT key1, key2, total FROM wp_tt WHERE id = 112121') SET total = 1
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8495834

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档