oracle数据库:数据导入/导出之二
一、任务
生产数据库里的有些数据已经通过应用程序生成了文本文件,这些文本文件里的数据也需要导入到开发数据库里,以供开发人员使用。
二、脚本
1\conn shopping_dba/shopping123
2\create table t_sldrtest(id number,name varchar2(10),createdate date);
3\文件文件内容
1,Bob,"2001-03-04"
2,James,"2004-09-12"
3,Mike,"2010-01-23"
4,Lily,"2008-11-10"
4\编辑控制文件
LOAD DATA
INFILE '\home\oracle\test_sqlldr.txt'
BADFILE '\home\oracle\test_sqlldr.bad'
DISCARDFILE '\home\oracle\test_sqlldr.discard'
APPEND
INTO TABLE SHOPPING_DBA.T_SLDRTEST
FIELDS TERMINATED BY ','OPTIONALLY ENCLOSED BY'"'
(
IN INTEGER EXTERNAL,
NAME CHAR,
CREATEDATE date "yyyy-mm-dd"
)
三、相关
在使用SQL*Loader时,最重要的任务就是编辑控制文件,控制文件里主要指定了如下的信息:
1\数据文件所在的路径和名称
2\bad file和discard file的路径和名称
3\如何把数据插入到表里,有如下4种方式
APPEND:如果被加载的表里已经有数据了,则使用该方式,表示把文本文件里的记录添加到表里去。
PLACE:如果被加载的表里已经有数据了,则使用该方式时先把表里的记录全部删除,再把文本文件里的记录添加到表里去。
UNCATE:该方式表示先把表里的记录全都截断,类似发出truncate table XXX的SQL语句,再把文本文件里的记录添加到表里去。
INSERT:使用该选项时,被加载的表里必须为空,再把文本文件里的记录添加到表里去。如果表里已经有记录了,则使用该方式时会报错。
4\被加载数据的表的名称。
5\数据文件里的数据格式,主要指定了列的分隔方式。同时指定数据文件里的列与表的列的对应关系。
6\如果有需要,还可以添加when短语,从而对文本文件里被加载的记录进行过滤。
本文来源 我爱IT技术网 http://www.52ij.com/jishu/5120.html 转载请保留链接。
- 评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)
-
