sqlldr导入数据---笔记

来源:互联网 发布:农村淘宝报名 编辑:程序博客网 时间:2024/05/17 06:08
1. 建表语句
CREATE TABLE GL_POINT
(
  UNIT_ID        VARCHAR2(20 BYTE),
  DEPT_ID        VARCHAR2(20 BYTE),
  ZHJGDM         VARCHAR2(6 BYTE),
  STAT_DATE      DATE,
  ADD_POINT      INTEGER
 )
2. 数据文件内容
000000              |+|000001              |+|000000|+|24-JUL-10   |+| 154169934
2270                |+|000002              |+|7889  |+|24-JUL-10   |+|       100
3. ctl文件内容
load data
into table GL_POINT truncate
--into table GL_POINT truncate when unit_id <>'' 不导入unit_id为空的数据
fields terminated by '|+|' TRAILING NULLCOLS
(    --字段名称
    UNIT_ID "trim(:UNIT_ID)",
    DEPT_ID "trim(:DEPT_ID)",
    ZHJGDM "trim(:ZHJGDM)",
    STAT_DATE "trim(:STAT_DATE)",
    ADD_POINT "trim(:ADD_POINT)"
 )
4. 执行语句:
sqlldr username/password data=gl_point.dat control=gl_point.ctl log=gl_point.log bad=gl_point.bad
5. 说明:
   1) Ctl文件中,对栏位做了去空格处理。
   2) 表中STAT_DATE栏位为date类型, 数据文件中的数据格式为”dd-mon-yy” 【sqlldr会自动进行转换】
   3) 如果加入过滤条件【when unit_id <>'' 】,则对满足条件的记录,日志输出【1 Row not loaded because all WHEN clauses were failed】内容

ctl和数据文件下载地址:http://download.csdn.net/detail/gengwx_2008/8861319
0 0
原创粉丝点击