oracle sqlldr使用(导入速度快,但对数据本身的处理功能弱)

时间:2022-11-14 04:43:46
sqlload.cmd
  1. pause
  2. sqlldr user/pass@tnsdb control.ctl skip=1 rows=2000 bindsize=8192000
  3. pause

control.ctl

  1. LOAD DATA
  2. INFILE 'Rating201001.csv'
  3. APPEND
  4. INTO TABLE "TBL_SELL"
  5. FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"'
  6. --FIELDS TERMINATED BY ','
  7. -- 表的字段没有对应的值时允许为空
  8. TRAILING NULLCOLS
  9. -- 下面的字段顺序对应csv文件中逗号分隔后的字段顺序,可以用:字段名来引用其他列的值
  10. (
  11. SRC_TYPE_CODE,
  12. --   YEAR_MONTH "201002", 忽略第二列值而使用固定值
  13. YEAR_MONTH,
  14. P_INDEX,
  15. PROVINCE,
  16. CITY,
  17. COUNTRY,
  18. SHOP_NAME "trim(:SHOP_NAME)",
  19. SHOP_CODE,
  20. BRAND_NAME,
  21. SELL_COUNT,
  22. SELL_MONEY,
  23. SHOP_RATING,
  24. TYPE_CODE "decode(:SRC_TYPE_CODE,10,5,:SRC_TYPE_CODE)"
  25. )