执行一条Sql语句,相同的vendor_id ,inventory_item_id就更新,不同的插入新增数据
merge into tscs_ems_upload_storage_t a
using (select ? as vendor_id,
? as inventory_item_id ,
? as description ,? as unit,
? as quantity,? as check_date,
? as last_updated_by,
? as created_by from dual) b
on (a.vendor_id = b.vendor_id and a.inventory_item_id = b.inventory_item_id)
when matched then
update set
a.description = b.description,
a.unit = b.unit,
a.quantity = b.quantity,
a.check_date = to_date(b.check_date,'yyyy-MM-dd'),
a.last_updated_by = b.last_updated_by,
a.last_update_date = sysdate
when not matched then
insert (a.id,a.vendor_id,a.inventory_item_id,a.description,a.unit,a.quantity,
a.check_date,a.created_by,a.last_updated_by)
values(tscs_ems_upload_storage_s.nextval,b.vendor_id,
b.inventory_item_id,b.description,b.unit,b.quantity,
to_date(b.check_date,'yyyy-MM-dd'),b.created_by,b.last_updated_by)