存儲過程:增量方式同步中間表到業(yè)務表

最近比較流行,這種通過ETL同步數(shù)據(jù)到中間表狭姨,再到業(yè)務表的方式去開發(fā)宰啦。這種存儲過程結(jié)構(gòu)差不多,所以饼拍,直接貼出一個例子赡模,就不多去解釋了。需要用到的师抄,直接復制過去漓柑,改一下表名,和更新的字段名叨吮,即可使用辆布。

CREATE OR REPLACE PROCEDURE PROC_SYNC_ABNORMAL_SETTLEMENT AS

? LAST_SYNC_TIME DATE; --業(yè)務表最新修改時間

BEGIN

--找出業(yè)務表中最新修改時間。由于一開始業(yè)務表是空的茶鉴,所以锋玲,要使用到nvl()函數(shù)

? SELECT nvl(MAX(modify_tm),

? ? ? ? ? ? to_date('2000-01-1 01:00:00', 'yyyy-mm-dd hh24:mi:ss'))

? ? INTO LAST_SYNC_TIME

? ? FROM ET_ABNORMAL_SETTLEMENT;

--插入數(shù)據(jù),首先涵叮,過濾出中間表中修改時間>業(yè)務表中最新更新時間的數(shù)據(jù)惭蹂,再去判斷業(yè)務表中是否存在這樣的ID伞插,如無,則進行插入操作盾碗。

? INSERT INTO ET_ABNORMAL_SETTLEMENT EA

? ? SELECT *

? ? ? FROM MID_ABNORMAL_SETTLEMENT MA

? ? WHERE MODIFY_TM > LAST_SYNC_TIME

? ? ? AND NOT EXISTS

? ? (SELECT ID FROM ET_ABNORMAL_SETTLEMENT WHERE ID = MA.ID);

? -- 批量更新

--過濾出中間表中修改時間>業(yè)務表中最新更新時間的數(shù)據(jù)蜂怎,再去判斷業(yè)務表中是否存在這樣的ID,如有置尔,則進行更新操作杠步。

? FOR I IN (SELECT *

? ? ? ? ? ? ? FROM MID_ABNORMAL_SETTLEMENT MA

? ? ? ? ? ? WHERE MA.MODIFY_TM > LAST_SYNC_TIME

? ? ? ? ? ? ? and EXISTS

? ? ? ? ? ? (SELECT ID FROM ET_ABNORMAL_SETTLEMENT WHERE ID = MA.ID)) LOOP

? ? BEGIN

? ? ? UPDATE ET_ABNORMAL_SETTLEMENT

? ? ? ? SET TRADE_CODE = I.TRADE_CODE,

? ? ? ? ? ? SETTLEMENT_AREA = I.SETTLEMENT_AREA,

? ? ? ? ? ? ACCOUNT_CODE = I.ACCOUNT_CODE,

? ? ? ? ? ? ACCOUNT_NAME = I.ACCOUNT_NAME,

? ? ? ? ? ? WAYBILL_MONTH = I.WAYBILL_MONTH,

? ? ? ? ? ? HANDLE_STATE = I.HANDLE_STATE,

? ? ? ? ? ? EXCEPTION_TYPE = I.EXCEPTION_TYPE,

? ? ? ? ? ? TASK_ID = I.TASK_ID,

? ? ? ? ? ? REPEAT_TASK_ID = I.REPEAT_TASK_ID,

? ? ? ? ? ? TASK_STATE = I.TASK_STATE,

? ? ? ? ? ? GPS_VALID = I.GPS_VALID,

? ? ? ? ? ? VALID_SOURCE = I.VALID_SOURCE,

? ? ? ? ? ? LINE_CODE = I.LINE_CODE,

? ? ? ? ? ? CONTRACT_SERVICE_TYPE = I.CONTRACT_SERVICE_TYPE,

? ? ? ? ? ? TRANSPORT_WAY = I.TRANSPORT_WAY,

? ? ? ? ? ? RUN_MODE = I.RUN_MODE,

? ? ? ? ? ? PRICING_MANNER = I.PRICING_MANNER,

? ? ? ? ? ? PROOF = I.PROOF,

? ? ? ? ? ? AUDIT_INSTRUCTIONS = I.AUDIT_INSTRUCTIONS,

? ? ? ? ? ? REASON_CANCELLATION = I.REASON_CANCELLATION,

? ? ? ? ? ? CANCEL_USER = I.CANCEL_USER,

? ? ? ? ? ? CANCEL_TM = I.CANCEL_TM,

? ? ? ? ? ? TASK_DEPT_CODE = I.TASK_DEPT_CODE,

? ? ? ? ? ? PROOF_USER = I.PROOF_USER,

? ? ? ? ? ? PROOF_TM = I.PROOF_TM,

? ? ? ? ? ? PREFETCH_EXEC_STATUS = I.PREFETCH_EXEC_STATUS,

? ? ? ? ? ? REQUIRE_PLAN_ID = I.REQUIRE_PLAN_ID,

? ? ? ? ? ? REQUIRE_ID = I.REQUIRE_ID,

? ? ? ? ? ? ACTUAL_WEIGHT = I.ACTUAL_WEIGHT,

? ? ? ? ? ? MODIFY_EXPLAIN = I.MODIFY_EXPLAIN,

? ? ? ? ? ? MODIFY_USER = I.MODIFY_USER,

? ? ? ? ? ? MODIFY_TM = I.MODIFY_TM,

? ? ? ? ? ? IS_DISPOSE = I.IS_DISPOSE

? ? ? WHERE ID = I.ID;

? ? END;

? END LOOP;

? COMMIT;--記得執(zhí)行完,要進行提交

EXCEPTION

? WHEN OTHERS THEN

? ? DBMS_OUTPUT.PUT_LINE('Exception happened,data was rollback');

? ? ROLLBACK;--有異常則回滾

END;

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末榜轿,一起剝皮案震驚了整個濱河市幽歼,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌谬盐,老刑警劉巖甸私,帶你破解...
    沈念sama閱讀 218,204評論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異飞傀,居然都是意外死亡皇型,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,091評論 3 395
  • 文/潘曉璐 我一進店門砸烦,熙熙樓的掌柜王于貴愁眉苦臉地迎上來弃鸦,“玉大人,你說我怎么就攤上這事幢痘』8瘢” “怎么了?”我有些...
    開封第一講書人閱讀 164,548評論 0 354
  • 文/不壞的土叔 我叫張陵颜说,是天一觀的道長购岗。 經(jīng)常有香客問我,道長门粪,這世上最難降的妖魔是什么喊积? 我笑而不...
    開封第一講書人閱讀 58,657評論 1 293
  • 正文 為了忘掉前任,我火速辦了婚禮玄妈,結(jié)果婚禮上乾吻,老公的妹妹穿的比我還像新娘。我一直安慰自己措近,他們只是感情好溶弟,可當我...
    茶點故事閱讀 67,689評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著瞭郑,像睡著了一般辜御。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上屈张,一...
    開封第一講書人閱讀 51,554評論 1 305
  • 那天擒权,我揣著相機與錄音袱巨,去河邊找鬼。 笑死碳抄,一個胖子當著我的面吹牛愉老,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播剖效,決...
    沈念sama閱讀 40,302評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼嫉入,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了璧尸?” 一聲冷哼從身側(cè)響起咒林,我...
    開封第一講書人閱讀 39,216評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎爷光,沒想到半個月后垫竞,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,661評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡蛀序,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,851評論 3 336
  • 正文 我和宋清朗相戀三年欢瞪,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片徐裸。...
    茶點故事閱讀 39,977評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡遣鼓,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出倦逐,到底是詐尸還是另有隱情譬正,我是刑警寧澤宫补,帶...
    沈念sama閱讀 35,697評論 5 347
  • 正文 年R本政府宣布檬姥,位于F島的核電站,受9級特大地震影響粉怕,放射性物質(zhì)發(fā)生泄漏健民。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,306評論 3 330
  • 文/蒙蒙 一贫贝、第九天 我趴在偏房一處隱蔽的房頂上張望秉犹。 院中可真熱鬧,春花似錦稚晚、人聲如沸崇堵。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,898評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽鸳劳。三九已至,卻和暖如春也搓,著一層夾襖步出監(jiān)牢的瞬間赏廓,已是汗流浹背涵紊。 一陣腳步聲響...
    開封第一講書人閱讀 33,019評論 1 270
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留幔摸,地道東北人摸柄。 一個月前我還...
    沈念sama閱讀 48,138評論 3 370
  • 正文 我出身青樓,卻偏偏與公主長得像既忆,于是被迫代替她去往敵國和親驱负。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 44,927評論 2 355

推薦閱讀更多精彩內(nèi)容

  • (一) 林曉遇見簡風時患雇,剛上高二电媳,十七八的年齡,正是花季雨季的好時候庆亡。 簡風坐她側(cè)排匾乓,靠窗。林曉靦腆又谋,是那種如果男...
    倚愷閱讀 442評論 0 0
  • 中國沒有嘻哈拼缝,中國只有pgone 隨著賈乃亮的一...
    儒之道閱讀 112評論 0 1
  • 也是腦海中忽然現(xiàn)出這本書的名字,然后就到網(wǎng)上找了一本電子書彰亥,它就是給準北大學子一人一本的極富價值的書——《平凡的世...
    100天一個胖子閱讀 253評論 0 2
  • 求其小姐本名并不是叫做求其咧七,只是因為她的口頭禪“求其啦”而被叫做求其小姐。 講究先生本名也不是叫做講究任斋,只是因為他...
    b2uty閱讀 256評論 0 0
  • 如果決意去做一件事了继阻,就不要再問自己和別人值不值得。心甘情愿才能理所當然废酷,理所當然才會義無反顧 ????瘟檩。 讀大學...
    鴻玫閱讀 346評論 0 0