select * from Openquery(MySQL, 'SELECT * FROM official.sys_hospital')

mysql链接服务器,update报错

 

执行更新语句:

update Openquery(MySQL, 'SELECT * FROM bigdata_official.sys_hospital WHERE id=2') set states=0;

报错,错误信息:

链接服务器"MySQL"的 OLE DB 访问接口 "MSDASQL" 返回了消息 "无法为更新定位行。一些值可能已在最后一次读取后已更改。"。
消息 7343,级别 16,状态 4,第 1 行
链接服务器 "MySQL" 的 OLE DB 访问接口 "MSDASQL" 无法 UPDATE 表 "[MSDASQL]"。行集正在使用乐观并发机制,而自上次提取或重新同步包含列值的行后,该列值又有更改。

 

错误原因:mysql表内 id=2 的数据 states 已经为 0,无法更新

解决方案:

update Openquery(MySQL, 'SELECT * FROM bigdata_official.sys_hospital WHERE states=1 and id=2') set states=0;

 

相关文章:

  • 2022-12-23
  • 2021-06-10
  • 2021-11-23
  • 2021-11-21
  • 2021-04-25
  • 2022-12-23
  • 2022-01-07
  • 2021-04-10
猜你喜欢
  • 2021-12-05
  • 2021-09-07
  • 2021-07-30
  • 2021-05-01
  • 2021-08-31
  • 2021-06-01
相关资源
相似解决方案