TRY-->DELETE TAIYODWH.dbDaily.dbo.T_D仕入伝票履歴--Daily 
FROM TAIYODWH.dbDaily.dbo.T_D仕入伝票履歴 AS Daily 
WHERE EXISTS(
SELECT 1 FROM  #T_D_Summons AS T_D_S WHERE Daily.伝票NO = T_D_S.伝票NO 
AND Daily.納品日 = T_D_S.納品日 
AND Daily.店CD = T_D_S.店CD 
AND Daily.ベンダーCD = T_D_S.ベンダーCD 
)

解决方案 »

  1.   

    DELETE TAIYODWH.dbDaily.dbo.T_D仕入伝票履歴--Daily 
    FROM 
    TAIYODWH.dbDaily.dbo.T_D仕入伝票履歴 AS Daily 
    where exists (select 1 from
    #T_D_Summons AS T_D_S 
    where 
    Daily.伝票NO = T_D_S.伝票NO 
    AND Daily.納品日 = T_D_S.納品日 
    AND Daily.店CD = T_D_S.店CD 
    AND Daily.ベンダーCD = T_D_S.ベンダーCD )
      

  2.   

    --或者
    DELETE TAIYODWH.dbDaily.dbo.T_D仕入伝票履歴--Daily 
    FROM 
    TAIYODWH.dbDaily.dbo.T_D仕入伝票履歴 AS Daily 
    ,
    #T_D_Summons AS T_D_S 
    where 
    Daily.伝票NO = T_D_S.伝票NO 
    AND Daily.納品日 = T_D_S.納品日 
    AND Daily.店CD = T_D_S.店CD 
    AND Daily.ベンダーCD = T_D_S.ベンダーCD 
      

  3.   

    ------------------------------------------------------------------------------------------------------------------------------
      再添加点信息:这个存储过程是一个快越远程服务器的过程,临时表#T_D_Summons是查询远程服务的结果(查询没有问题),存储过程放在本地,这个表“TAIYODWH.dbDaily.dbo.T_D仕入伝票履歴”是另外一个远程服务器,现在的问题是单独删除表“TAIYODWH.dbDaily.dbo.T_D仕入伝票履歴”中的数据时没有问题,但只要进行连接(inner join)删除时就提示一下错误:サーバー : メッセージ 7306、レベル 16、状態 2、行 1
    OLE DB プロバイダ 'SQLOLEDB' からテーブル '"dbDaily"."dbo"."T_D仕入伝票履歴"' を開けませんでした。 プロバイダが行照合位置をサポートできませんでした。 プロバイダが、ほかのプロパティまたは必要条件と競合が発生したことを示しています。 
    [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...