感谢上面几位,还有一个问题:
假如需要在插入前先作一个删除的动作(有条件的删除),如:
delete from serv2.db2.dbo.tb2 where id in (select id from tb3),希望先从tb2中删除部分行,
表tb2和tb3的字段如下:
tb2:id,name
tb3:id,number
但执行后报错:
服务器: 消息 7306,级别 16,状态 2,行 1
未能打开表 '"webbb"."dbo"."tb2"'(来自 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...