业务需求:需要在Oracle1 的A表增加一个字段,这个字段来自于Oracle2 的B表的一个字段。
解决方案:
1、用kettle跨库跨表update;()
2、使用DB Link update
首先在oracle1 中建立DB Link
2018/11/01
切记在Database to connevt to后面需要带端口 & servicename,否则会报如下错误。
以上是我建立的两个DB Link。
此时就可以在用如下SQL
/* Formatted on 2018/9/15 11:25:16 (QP5 v5.313) */
UPDATE edasys.cf_equip_t A
SET item1 =
(SELECT B.DESCRIPTION
FROM mes_machinespec@MFGReal B
WHERE A.equip_id = b.machinename
AND B.SUBFACTORYNAME IN ('CF', 'ACF')
AND LENGTH (B.machinename) = 8)
WHERE A.is_defect_type IS NULL;
此时需求完成。