首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > Mysql >

链接服务器"server"的 OLE DB 访问接口 "MSDASQL" 回来了消息 "无法为更新定位行。一些

2012-09-10 
链接服务器server的 OLE DB 访问接口 MSDASQL 返回了消息 无法为更新定位行。一些值可能已在最后一次

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

经过测试如果在本地的mysql里更新一条数据,如果更新命令是:update 表名 set 列名 = 更新值 where 条件 = 条件
执行第一次的时候没有问题,执行第二次的时候影响行数的0,但是要在远程调用的话,就会报上面的错误,我的意思是,可不可以不让他报以上的错误,或者说在mysql里那里可以设置,请高手帮帮忙。

[解决办法]
是用MYODBC连的吗?
flag中有return matching rows 这项 应该打勾
对应连接字符串中的option值 +2
[解决办法]
update IGNORE 表名 set 列名 = 更新值 where 条件 = 条件
[解决办法]
如果用MYODBC 的DSN的话,请进入ODBC配置栏, 将flag中有return matching rows 这项 打勾 

如果用MYODBC的连接字符串,请将OPTION值 加 2
 "driver={MySQL ODBC 3.51 driver},server=xxx,db=xxx,uid=xxx,pwd=xxx,option=3"
(备注,每个选项对应option一个值,如1,2,4,8..., 选中某个就加某个值)

你可能是用DSN.
[解决办法]
看MYSQL-ODBC帮助
http://dev.mysql.com/doc/refman/5.0/en/connector-odbc-configuration-connection-parameters.html

热点排行