Oracle中導入文本數據的方法
2024-08-29 13:29:53
供稿:網友
 
dos 環境下使用sql*loader命令 加載 
使用其它數據庫的數據轉移工具
oracle 企業管理器中的數據加載功能
具體的技術實現
一、dos 環境下加載 
1、首先,服務器端的偵聽服務必須已經開啟。
測試方法:dos 下輸入
c:/>sqlplus username/[email protected] 
2、然后使用 oracle 的 sqlldr 命令進行數據的導入
前期條件
1) oracle 數據庫端必須已經建好了需要導入的數據表的結構
2) 一個數據源文件 下面例子中為制表符分隔的文本文件 model.txt ,為excel 表中導出的
3) 手工編輯一個xxx.ctl 的控制文件
4) 命令行加載數據
如下實例:
以下文件缺省放到c:/ 下,如果不是,就需要指明全路徑
1. 命令控制文件 input.ctl 內容
命令
說明
load data
1、控制文件標識
infile ''model.txt'' 
2、要輸入的數據文件名為test.txt
append into table system.塔位屬性表
3、向表test中追加記錄
fields terminated by x''09''
4、指定分隔符,字段終止于x''09'',是一個制表符(tab)
(編號,名稱,大小)
5、定義列對應表中順序
 
控制文件中指定插入數據的方式關鍵字
insert,為缺省方式,在數據裝載開始時要求表為空
append,在表中追加新記錄
replace,刪除舊記錄,替換成新裝載的記錄
truncate,同上
在 dos 窗口下使用 sql*loader 命令實現數據的導入
c:/>sqlldr userid=system/[email protected] servicename control=input.ctl 
默認日志文件名為:input.log
默認壞記錄文件為:input.bad
二、使用其它數據庫轉移工具
以下以sql server 導入導出向導為例
1、在數據的導入導出向導中設置數據源服務器,實例中選擇數據源選擇sql server
2、然后指定要導入的oracle 數據源
3、需要配置oracle 的屬性信息 
需要注意的是,登錄數據庫的用戶信息即為數據導入之后的方案名,即導入之后的sql server 中的表在oracle 中標志名為 username.表名
以下按照提示即可,可以完全導入sql server 中的數據表和視圖,也可以使用查詢語句返回你要選擇的列或者行。
三、oracle 企業管理器中的數據加載功能
登錄oracle 的控制臺界面,針對單獨的數據表可以使用數據加載工具
中間需要指定控制文件等,同dos 加載一致,不再重復
[http://www.china-dev.com/school/database/wz/37wr43g3zzz91njchs.shtml]