一. 作用
SQL*LOADER是ORACLE的數據加載工具,用來將文件導入到ORACL數據庫,可以導入一個表或者多個表,甚至可以在導入時修改數據。
二. ORACLE下載地址
sqlloader需要電腦上有sqlldr文件才可實現傳輸功能,如果沒有無法使用sqlloader,由於網上有很多ORACLE是精簡版本的,精簡版安裝完成后oracle包中沒有sqlldr.exe這個文件,這里我提供了一個下載地址,這個版本中有sqlldr,sqlplus,本人親測過,將鏈接分享給大家。
https://pan.baidu.com/s/18H06E4vzGnNtfIOm-UqPLQ 提取碼:zoqf (備注7天后失效)
三. 如何確定電腦中有沒有sqlldr文件
兩種方式: ① 在oracle目錄中的bin下看有沒有sqlldr.exe文件,本人安裝目錄為
D:\app\Administrator\product\11.2.0\dbhome_1\BIN
② 直接在dos(win+R)中輸入“sqlldr”,如果出現“sqlldr不是內部或外部命令,也不是可運行程序”字樣,說明電腦中沒有sqlldr.exe這個文件。如果出現如下所示,說明sqlldr安裝成功。
四. 實現txt文件導入到數據庫(較簡單)
1. 創建表結構
目的:將表建立出來,讓外面的數據插入到表格中
創建student1表
create table student1(
sname varchar(20),
sage integer,
semall varchar(20),
sphone varchar(20),
saddress varchar(20)
)
2. 創建input.txt文件(數據文件)
目的:txt文件中是外部插入的數據,前提是txt中數據的格式和上面student1的格式相同,因為只有格式相同了數據才可以插入。
3. 創建input.ctl文件(控制文件)
目的:讓input.txt中的數據加載到sdudent1中,該文件中可以指定輸入的文件名、輸入到哪個表中、各個字段是用什么符號間隔的等,都可以在里面進行設置。
4. 執行命令
注意:將input.txt數據文件和input.ctl控制文件放在一個f盤text文件夾中,注意了這里需要在test文件夾中執行命令,比如我將數據文件和控制文件放在F:/test文件夾下,那么在dos中需要切換到test下運行這個命令,命令格式為
sqlldr userid = 用戶名/ 密碼@數據庫名 control=控制文件名
我執行的命令如下
如果成功了,得到如下的結果
運行成功后在test文件夾中會出現input.log文件,顯示如下
5. 查看數據
操作:打開plsql developer,輸入select * from student1,就會出現下圖的結果,說明外部txt文件已成功導入到數據庫。
https://www.cnblogs.com/lanzi/archive/2010/08/19/1803768.html
https://www.cnblogs.com/toughhou/p/3778764.html
https://www.cnblogs.com/beanbee/archive/2012/10/13/2722438.html