Q: 我要從文本中錄入數據到一個表中,值之間以Tab鍵格開,誰有實例,Oracle有沒有批量導入的?
A:
我用了個比較笨的辦法,就是先將文本文件做成excel文件,然後再根據這個辦法導入:1、打開MicroSoft Excel 2000
2、文件(F)→新建(N)→工作簿→
3、輸入以下數據,存盤爲test.xls,如圖:
4、文件(F)→另存爲(A)→
保存類型爲:製表符分隔,起名爲text.txt,保存到C:/
5、連入SQL*Plus
以system/manager用戶登錄,
SQL> conn system/manager
創建表結構
SQL> create table test
(
id number, --序號
username varchar2(10), --用戶名
password varchar2(10), --密碼
sj varchar2(20) --建立日期
);
6、創建SQL*Loader輸入數據所需要的文件,均保存到C:/,用記事本編輯:
控制文件:input.ctl,內容如下:
load data --1、控制文件標識
infile 'test.txt' --2、要輸入的數據文件名爲test.txt
append into table test --3、向表test中追加記錄
fields terminated by X'09' --4、字段終止於X'09',是一個製表符(TAB)
(id,username,password,sj) -----定義列對應順序
a、insert,爲缺省方式,在數據裝載開始時要求表爲空
b、append,在表中追加新記錄
c、replace,刪除舊記錄,替換成新裝載的記錄
d、truncate,同上
7、在DOS窗口下使用SQL*Loader命令實現數據的輸入
C:/>sqlldr userid=system/manager control=input.ctl
默認日誌文件名爲:input.log
默認壞記錄文件爲:input.bad
8、連接到SQL*Plus中,查看是否成功輸入