Press "Enter" to skip to content

oracle之sqlldr命令数据导入

创建控制文件,以ctl为后缀名(test.ctl),内容如下;
load data
infile test.txt
append into table test_table
fields terminated by ","
(id,name,age)

其中:
test.txt为需要导入到数据库的文件;
test_table为需要导入数据的数据库表;
","为导入文件的分隔符.

导入数据分成四种模式,可以根据需求选择:----控制文件里面
1:APPEND // 原先的表有数据 就加在后面
2:INSERT // 装载空表 如果原先的表有数据 sqlloader会停止 默认值
3:REPLACE // 原先的表有数据 原先的数据会全部删除
4:TRUNCATE // 指定的内容和replace的相同 会用truncate语句删除现存数据

需要导入数据库的文本为test.txt,文本内容如下:
1,test01,1
2,test02,2
3,test03,3
4,test04,4
5,test05,5
上面是以逗号隔开的,所以上面的控制文件里面写的逗号.

执行sqlldr命令:sqlldr userid=username/password control=test.ctl
因为 userid -- ORACLE username/password
所以执行命令时 只需要执行sqlldr username/password control=test.ctl即可.
注意:因为sqlldr命令不是oracle命令所以不能在sql标签里面执行.
执行完该命令显示:
SQL*Loader: Release 11.2.0.1.0 - Production on 星期二 5月 29 21:20:00 2018
copyright (c) 1982, 2009, Oracle and/or its affiliates. All rights reserved.
达到提交点 - 逻辑记录计数 5

如上所示则表示导入数据库成功!test_table里面会有新数据.

Be First to Comment

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注