用DBLink访问远程数据库,做如下操作:DELETE FROM csdn_dblink.csdn_companymanagecenter.dbo.t_stock_code
 WHERE bill_id IN (SELECT id FROM t_stock_index b WHERE b.hasbackup = 0) AND machine_id = '001'提示错误:未能打开表 '"CSDN_CompanyManageCenter"."dbo"."T_Stock_Code"'(来自 OLE DB 提供程序 'sqloledb')。 提供程序未能支持行查找位置。 提供程序指出与其它属性或要求发生了冲突。
[OLE/DB provider returned message: 多步 OLE DB 操作产生错误。如果可能,请检查每个 OLE DB 状态值。没有工作被完成。]
OLE DB 错误跟踪[OLE/DB Provider 'sqloledb' IOpenRowset::OpenRowset returned 0x80040e21:  [PROPID=DBPROP_BOOKMARKS VALUE=True STATUS=DBPROPSTATUS_CONFLICTING], [PROPID=DBPROP_COMMANDTIMEOUT VALUE=600 STATUS=DBPROPSTATUS_OK], [PROPID=Unknown PropertyID VALUE=True STATUS=DBPROPSTATUS_OK], [PROPID=DBPROP_IRowsetLocate VALUE=True STATUS=DBPROPSTATUS_CONFLICTING], [PROPID=DBPROP_IRowsetChange VALUE=True...
t_stock_index 的id为int 4
t_stock_code 的bill_id为int 4本地数据库csdn_companymanagecenter和远程数据库csdn_companymanagecenter结构完全相同。另: 同样结构的语句DELETE FROM CSDN_DBLink.CSDN_CompanyManageCenter.dbo.T_CerFile WHERE ID in (select id from T_CerFile WHERE hasbackup = 0) AND machine_id = '001'
执行正常!