用SQL*Loader可以满足你的要求。
例如:
1.CREATE TABLE baseball_player (
player_id NUMBER(7) NOT NULL,
last_name VARCHAR2(40) NOT NULL,
first_name VARCHAR2(30) NOT NULL,
middle_initial VARCHAR2(5),
start_date DATE)
2.自己写一个控制文件input.ctl,内容如下:(TEST.TXT是你的text文件)
LOAD DATA
INFILE TEST.TXT'
INTO TABLE BASEBALL_PLAYER
FIELDS TERMINATED BY '|' OPTIONALLY ENCLOSED BY '"'
(player_id,last_name,first_name,middle_initial,start_date)
3.然后你就可以用SQLLDR命令啦,如下:
sqlldr userid=system/manager control=input.ctl
命令如下:
sqlldr userid=system/manager control=input.ctl
input.ctl 是控制文件,放在系统盘的根目录下了。
内容为:
load data
infile 'test.txt'
append into table ttest
fields terminated by X'09'
(name,describe,id,ecompany,company,address)
在同样的系统根目录下放了test.txt,存放了数据,
每条数据共有6项。
在数据库里新建立了ttest表,包括字段name,describe,id,ecompany,company,address
1、假设input.txt放在c:\input.ctl,test.txt文件放在c:\test.txt
input.ctl内容:
LOAD DATA
INFILE C:\TEST.TXT
INTO TABLE ttest
FIELDS TERMINATED BY '|' (name,describe,id,ecompany,company,address)
2、然后你就可以用SQLLDR命令,在DOS窗口下执行如下:
sqlldr userid=system/manager control=c:\input.ctl
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/793172/viewspace-220410/
,如需转载,请注明出处,否则将追究法律责任。