| 前一陣領(lǐng)導(dǎo)安排了一個(gè)任務(wù):定時(shí)將集團(tuán)數(shù)據(jù)庫某表的數(shù)據(jù)同步至我們公司服務(wù)器的數(shù)據(jù)庫,感覺比寫增刪改查SQL有趣,特意記錄下來,希望能幫到有類似需求的小伙伴,如有錯(cuò)誤也希望各位不吝指教環(huán)境描述: 集團(tuán)數(shù)據(jù)庫:Oracle 11g 部門數(shù)據(jù)庫:Oracle 11g 使用的軟件:PLSQL Developer 13 網(wǎng)絡(luò)環(huán)境:兩個(gè)數(shù)據(jù)庫處于同一局域網(wǎng) 先講一下完成此任務(wù)需要用到哪些技術(shù):
 Database link:使用戶可以通過一個(gè)數(shù)據(jù)庫訪問到另外一個(gè)遠(yuǎn)程數(shù)據(jù)庫 DBMS_Job:使ORACLE數(shù)據(jù)庫定期執(zhí)行特定的任務(wù) Procedure:用來完成特定的數(shù)據(jù)操作(比如修改、插入、刪除數(shù)據(jù)等,個(gè)人感覺類似于Java中Util類里的方法) 一:創(chuàng)建Database links1.在PLSQL Developer對(duì)象欄找到Database links右鍵選擇新建     
 
 
   2.打開后的界面    
 
 
 ?、?span style="font-family: Calibri">:連接的名稱,可以自定義,建議命名規(guī)范為:connect_數(shù)據(jù)庫名稱 ?、?span style="font-family: Calibri">:要連接的數(shù)據(jù)庫的用戶名,密碼,以及地址,地址格式為IP:端口/數(shù)據(jù)庫名稱 ?、?span style="font-family: Calibri">:保存 
 
 3.測(cè)試Database link是否創(chuàng)建成功 SQL格式: Select * From 目標(biāo)數(shù)據(jù)庫的表名稱@Database link名稱 假設(shè)對(duì)方有一張表為:AD_User,我們創(chuàng)建的Database link名稱問connect_Server 則測(cè)試SQL如下: Select * From AD_User@connect_Server 
 二:創(chuàng)建Procedure1.在對(duì)象欄找到Procedures右鍵選擇新建     
 
 
 2.打開界面如下    
 
 
 第一行Name,輸入要?jiǎng)?chuàng)建的Procedure的名稱 第二行Parameters參數(shù),視情況而定,無特殊要求的話可以直接刪掉(光標(biāo)定位到箭頭所示位置,按) 最后點(diǎn)擊確 定按鈕 
 3.點(diǎn)擊確定后的界面:    
 
 
 在begin下編寫需要執(zhí)行的SQL即可,添加,刪除等對(duì)數(shù)據(jù)庫進(jìn)行更改的SQL語句記得要加commit 如圖    
 
 
 
 4.編寫完成后點(diǎn)擊PLSQL任務(wù)欄的執(zhí)行按鈕即可    
 
 三:創(chuàng)建DBMS_Job1.在對(duì)象欄找到DBMS_Jobs右鍵選擇新建     
 
   2.打開后界面如下    
 
 ?、?nbsp; What值:填寫Procedure名稱,多個(gè)以逗號(hào)(,)分割 最后分號(hào)(;)結(jié)尾 ② 下一個(gè)日期:第一次執(zhí)行從什么時(shí)間開始,立即開始為sysdate ③ 間隔: 每隔多長(zhǎng)時(shí)間執(zhí)行一次 每秒鐘執(zhí)行: sysdate+1/(24*60*60) 每分鐘執(zhí)行: sysdate+1/(24*60) 也可以設(shè)置每天,每周,每月等等,具體SQL可以百度,此處不做贅述 
 3.配置完成后界面    
 最后點(diǎn)擊應(yīng)用即可 
 四:演示
   
 
 
 
 
 | 
|  |