版權聲明:歡迎評論和轉載,轉載請注明來源。 https://blog.csdn.net/zy332719794/article/details/51725949
工具準備:
1、首先到網上下載下傳shp2sdo工具。
2、把下載下傳的shp2sdo.exe檔案放置到oracle的安裝路徑的bin目錄下。
*備注:這裡以railway.shp名的檔案為例。
一、資料預處理
啟動指令行工具,運作指令:shp2sdo.exe,然後按提示輸入“shp檔案路徑”、“輸出路徑”等。
[shp檔案的路徑]>shp2sdo.exe
[shp檔案的路徑]>...
轉換成功後生成三個檔案(railway.ctl、railway.dat、railway.sql)。
二、建立表
利用上一步生成railway.sql檔案進行表建立。啟動指令行工具,運作:
[railway.sql檔案生成路徑]>sqlplus username/passwd@sid
SQL>@railway.sql
SQL>exit
三、向表中載入記錄
啟動指令行工具,運作
[railway.ctl檔案生成路徑]>sqlldr username/passwd@sid railway
四、建立空間索引
給空間資料字段建立索引。
>sqlplus username/passwd@sid
SQL>create index IDX_RAILWAY on RAILWAY(geom) indextype is mdsys.spatial_index;
補充:1. 在進行到第三步時,可能會出現“此處應該為**,實際為**”的異常,需用記事本打開railway.ctl檔案,然後把railway.dat路徑添加引号,或把路徑删了隻留檔案名例如INFILE railway.dat。2. 在第三步或第四補出現錯誤時,檢查一下資料庫編碼和生成的railway.dat編碼格式是否一緻。
導入資料的過程中,實際操作包括四個步驟:
1、建立表,包括空間字段(MDSYS.SDO_GEOMETRY)。
2、在空間記錄表(USER_SDO_GEOM_METADATA)中插入一條記錄。
3、在建立的表中插入所有記錄資料。
4、建立表的空間索引(可通過user_sdo_index_metadata或user_sdo_index_info查詢)。