加载外部数据

来源:互联网 发布:图片 js 点击放大 wap 编辑:程序博客网 时间:2024/06/06 02:31

方案1:可以使用外部表读取文件中的数据
创建方法:

Create or replace directory dump_dir as ‘/home/oracle/oradata’;
Grant read,write on directory dump_dir to scott;

编辑控制文件:

Vi  ldr_ctl.ctlCreate table ext_tbs(Ename varchar2(10);Job varchar2(10);Dept_id unmber)Organization external (type  oracle_loader Default directory extdir Access parameters (records delimited by newline Skip 6 Fields terminated by “,”(ename,job,dept_id))Location(‘ldr_ctl.ctl’));)

使用sqlldr加载数据:

Sqlldr scott/tiger control=ldr_ctl.ctl external_table=generate_only

方案2:可以使用BFILE加载文件中得数据
创建方法:

Create or replace directory BFILE_TEST as ‘/home/oracle/oradata/bfiles’;Grant read on directory BFILE_TEST to scott;

编辑/home/oracle/oradata/bfiles/1.TXT,

Create table bfiles_tbs(id int,name bfile);Insert into bfiles_tbs values(1,bfilename(‘BFILE_TEST’,’1.TXT’));

方案三:使用sqlldr 加载excel..等文件数据
1、创建用户
2、数据文件:把数据文件保存成*.cvs数据

3、根据数据文件创建元数据(表结构)

create table ams(      acc_location varchar2(10),       acc_name varchar2(20),        acc_brand varchar2(10),       acc_model varchar2(30),     acc_date varchar2(20),     acc_sn varchar2(30),     acc_product_date varchar2(20),     acc_useddepart varchar2(30),     acc_owner varchar2(30),     acc_devno varchar2(30),     acc_no varchar2(40),     acc_status varchar2(60),     acc_address varchar2(50));

3、控制文件:

load datainfile 'E:\sst1B32.csv'append into table ams fields terminated by ','trailing nullcols(acc_location ,acc_name ,acc_brand  ,acc_model,acc_date,acc_sn,acc_product_date,acc_useddepart,acc_owner,acc_devno,acc_no,acc_status,acc_address)

4、登录数据,加载表数据

C:\Users\bo-chen1.HNANET>sqlldr userid=bobo/ckf77856@10.37.2.21:1521/ECIMS control=E:\ams.ctl log=E:\ams.log bad=E:\ams.bad discard=E:\ams.dcrd
原创粉丝点击