Sql ORA-02070:数据库INVWARE在此上下文中不支持
背景:Sql ORA-02070:数据库INVWARE在此上下文中不支持,sql,sql-server,oracle,merge,insert-update,Sql,Sql Server,Oracle,Merge,Insert Update,背景: 我想在一个进程内按计划运行此合并。我必须将新数据插入sql数据库表,如果数据存在,我希望更新数量 问题: 我正在尝试将Oracle数据库合并到sql数据库,但出现了一个错误(请参阅此问题的标题)。我尝试使用与创建视图所用的sql脚本相同的合并,但它返回了相同的错误 问题: 我的代码中是否存在问题(见下文) 在sql server上,我有以下仓库代码varchar(500)、采购订单编号varchar(500)、采购订单标题id int、供应商名称varchar(500)、行编号int、项
我想在一个进程内按计划运行此合并。我必须将新数据插入sql数据库表,如果数据存在,我希望更新数量 问题:
我正在尝试将Oracle数据库合并到sql数据库,但出现了一个错误(请参阅此问题的标题)。我尝试使用与创建视图所用的sql脚本相同的合并,但它返回了相同的错误 问题:
我的代码中是否存在问题(见下文)
在sql server上,我有以下仓库代码varchar(500)、采购订单编号varchar(500)、采购订单标题id int、供应商名称varchar(500)、行编号int、项目代码varchar(500)、采购数量int、收货数量int、varchar的rcv(500)、余额int、开票数量int、结算代码varchar(500)、收款日期、,仓库代码varchar2(150字节)、采购订单编号varchar2(20字节)、采购订单标题id号、供应商名称varchar2(240字节)、行编号、物料代码varchar2(40字节)、采购数量编号、接收数量编号、varchar2(240字节)、余额编号、数量开票编号、已结代码varchar2(25字节),记录日期日期,需要按日期日期,订单行id号Sql Server为2012 Enterprise。
MERGE INTO "receipt_details"@invware d
USING (
SELECT *
FROM raf_po_receiving_details_v
WHERE last_update_date >= '1-AUG-2013' ) s
ON ( "po_header_id" = s.po_header_id
and "po_line_id" = s.po_line_id )
WHEN MATCHED THEN UPDATE
SET "purchased_qty" = s.purchased_qty,
"qty_received" = s.qty_received,
"balance_remaining" = s.balance_remaining,
"qty_billed" = s.qty_billed
WHEN NOT MATCHED THEN INSERT ( "warehouse_code", "po_number", "po_header_id",
"vendor_name", "line_num",
"item_code", "purchased_qty", "qty_received",
"rcv_by", "balance_remaining", "qty_billed",
"closed_code", "rec_date", "need_by_date", "po_line_id" )
VALUES (s.warehouse_code, s.po_number, s.po_header_id, s.vendor_name,
s.line_num, s.item_code, s.purchased_qty, s.qty_received, s.rcv_by,
s.balance_remaining, s.qty_billed, s.closed_code, s.rec_date, s.need_by_date, po_line_id);