2010年11月7日 星期日

Oracle_資料匯出及匯入(以使用Oracle Spatial的專案說明)

雖然是基本功,但之前也是搞了好久才匯好,趁著今天又做一次紀錄一下。

如果你的系統所讀取的空間資料也是存在Oracle Spatial內,而在資料一值更改的情況下,我們就有可能要一值重複去業主那邊匯資料的步驟。在之前剛剛就是在說明這些步驟的流程,所以综合來說從原始資料取得到系統更新上線,"匯資料"這件事情要做什麼:

1. 確認圖資的資料型態符合欲匯入資料庫的格式(可參考)
2. 將所得到的SHP檔案,利用Autodesk Map 3D匯入Oracle Spatial(可參考)
3. 將已匯入Oracle的空間資料匯出成.DMP檔案。(本篇下述)
4. 將DMP攜至業主機器匯入。

所以本篇的重點就是資料匯出、匯入的操作流程:
1. 於cmd.exe底下輸入 "exp 帳號@服務名稱"(帳號即為具有匯出資料權限之使用者帳號,服務名稱則為NetManage內所取之服務識別)
2. 輸入密碼後會出現以下畫面:

A. 緩衝區(4096)
B. 匯出檔案:自行變更(檔名.DMP)
C. 選擇要匯出使用者(U)還是表格(T) (預設值為使用者[U])
D. 匯出授權(Yes)
E. 匯出表格資料(Yes)
F. 壓縮擴充區塊(Yes)
G. 要匯出的使用者:自行輸入
也就是問你匯出的內容與一些基本設定,要變更的只有兩個地方,第一個是C項(如果要匯出該使用者的全部表格就不變,特定表格就選T),第二個是G項(如果C項選使用者就輸入要匯出的使用者名稱,如果選表格則輸入表格名稱),完成後程式即會匯出需要的表格資料。
3. 如果cmd是在C:底下輸入,就可以在C槽根目錄找到你的.DMP檔案。

接下來就是至業主的匯入工作。
1. 於cmd.exe底下輸入 "imp 帳號@服務名稱"
2. 輸入密碼後會出現以下畫面:

A. 緩衝區大小不動(30720)
B. 僅列出匯入檔內容(NO)
C. 物件已存在,建立的物件錯誤被略過不予處理(NO)
D. 匯入授權(Yes)
E. 匯入表格資料(Yes)
F. 匯入整個匯出檔(NO)
G. 使用者名稱:(自行輸入)
H. 輸入表格名稱:(自行輸入)
要輸入的也是兩個地方,G項與H項,一個是輸入要匯出的使用者名稱,另一個是輸入要匯入的表格(要指定匯入特定表格於F項應輸入NO)。

當然,以上的方式對於整批更新相當方便,但如果業主已經對資料編修了,就要小心覆蓋了。

沒有留言:

張貼留言