本文介绍SQL*Loader在实际使用过程中经常用到的典型例子。

1. 表中的列比数据文件的列要少怎么办?

假设一个csv的文件如下:
a1,a2,a3,a4
b1,b2,b3,b4
c1,c2,c3,c4
d1,d2,d3,d4

总共4列,先要求只要第2、3列数据,怎么办呢?这时候,FILLER(注意:不是FILTER)参数派上用场了,控制文件如下所示:

load data
infile 'data.csv' "str '\r\n'"
into table test.test
append
fields terminated by ','
(col1 filler,column01_name,column02_name
)

从上面的控制文件我们注意到在第一列col1后面有filler标识,表示将不读取第1列的数据;细心的读者可能发现了我们并没有给第4列加上filler标识,这是因为sqlldr默认跳过剩下的数据,当然如果你写上col4 filler也是可以的。

2. 如何自动生成sequence?

sqlldr无法使用数据库里的sequence赋值,只能使用其自带的sequence语句,这点确实很不方便。
因此维护原本的sequence,需要以下步骤:
1)首先获得表上sequence的当前值:
SYS@TEST16> select LAST_NUMBER from dba_sequences where sequence_name='SEQ_ORDER';LAST_NUMBER
-----------5410405

2)在sqlldr的控制文件里,以上一步获得的值为sequence的开始值,如下所示:

id SEQUENCE(5410405,1) 
3)数据加载完毕后,用select语句获得id的最大值
4)重建数据库的sequence,把初始值设为上一步获得的id最大值+1

转载于:https://www.cnblogs.com/james1207/p/3370781.html

[Oracle] SQL*Loader 详细使用教程(5)- 典型例子相关推荐

  1. [Oracle] SQL*Loader 详细使用教程(3)- 控制文件

    控制文件是SQL*Loader里最重要的文件,它是一个文本文件,用来定义数据文件的位置.数据的格式.以及配置数据加载过程的行为,在sqlldr中以control参数指定控制文件.   在控制文件里配置 ...

  2. Oracle SQL Loader的详细语法

    Oracle   SQL   Loader的详细语法 SQL*LOADER是ORACLE的数据加载工具,通常用来将操作系统文件迁移到ORACLE数据库中.SQL*LOADER是大型数据 仓库选择使用的 ...

  3. Oracle SQL Loader的详细语法

    转载 http://www.cnblogs.com/binking/archive/2006/11/21/567587.html Oracle   SQL   Loader的详细语法   SQL*LO ...

  4. win7 安装Oracle 10g 数据库详细步骤教程

    win7 安装Oracle 10g 数据库详细步骤教程 一:环境 操作系统:win 7 64位 内存:8G Oracle 10g 压缩包:oracle.7z 客户端:Oracle_client_win ...

  5. [Oracle] Data Pump 详细使用教程(5)- 命令交互模式

    [Oracle] Data Pump 详细使用教程(1)- 总览 [Oracle] Data Pump 详细使用教程(2)- 总览 [Oracle] Data Pump 详细使用教程(3)- 总览 [ ...

  6. Oracle SQL Loader数据导入

    1.SQL LOADER是ORACLE的数据加载工具,通常用来将操作系统文件迁移到ORACLE数据库中.SQL*LOADER是大型数据仓库选择使用的加载方法,因为它提供了最快速的途径(DIRECT,P ...

  7. 学习Oracle SQL loader 的使用

    sql loader使用例子 a)SQLLoader将 Excel 数据导出到 Oracle 1.创建SQL*Loader输入数据所需要的文件,均保存到C:\,用记事本编辑: 控制文件:input.c ...

  8. oracle中loder,Oracle Sql Loader的学习使用

    最近由于遇到oracle控制文件的使用,虽然不是很复杂,但是从来没有用过,专门花点时间看看.点击 1,概述: Sql Loader: 一个批量工具,将文件数据导入到数据库.可以导入一个表或者多个表,甚 ...

  9. oracle sqlload速度加快,oracle,sql loader 及 快速生成大量数据 CSV文件sqlldr

    要测试sql loader 以及快速产生大量测试数据 生成大量测试数据思路. 一,用plsql developer 生成csv 文件 二,用>>输出重定向,追加到一个cvs 文件里. 三, ...

  10. oracle之数据同步:Oracle Sql Loader使用说明(大批量快速插入数据库记录)

    1.准备表数据 select * from emp10;create sequence seq_eseq increment by 1 start with 1001 maxvalue 9999999 ...

最新文章

  1. AI黑科技:呵护地球,我们是认真的
  2. SAP WM中阶下架策略A(Partial Pallet Quantity)
  3. 【游戏开发备注之二】配置Xcode版本控制SVN详细步骤内含部分问题解决方案
  4. Distributed Systems笔记-middlewares
  5. Error:Execution failed for task ':dexDebug'
  6. c# 时间戳的精度(Datetime.now 与 Stopwatch)
  7. Kindeditor放置两个调用readonly错误
  8. Oracle用户、权限、角色管理
  9. 《大数据》2015年第4期“金融、安全与情报大数据”专刊征文通知
  10. 数据 3 分钟 | 腾讯云最新研究论文被国际顶级会议收录、员工因删库被法院判刑7年、elastic 宣布将更改开源协议...
  11. c语言ch能储存多少字符,二级c语言程序设计习题与解答ch5-7函数字符(11页)-原创力文档...
  12. 绘制图像直方图 matplotlib
  13. Linux桌面环境安装matlab并创建快捷方式
  14. arcpy批量重命名
  15. 【递归调用在二叉树中的应用】前序遍历、中序遍历、后序遍历、求二叉树叶子结点及复制二叉树的C语言实现
  16. opnet中SOCKET接口开发
  17. [股票] 现阶段思考感悟
  18. linux可执行文件签名,elf签名和可执行文件签名
  19. 51单片机外部中断的使用以及优先级设置
  20. lstm需要优化的参数_1-基于LSTM-GA 的股票价格涨跌预测模型

热门文章

  1. Vue组件学习(转载)
  2. 百度前端技术学院-task1.8源代码以及个人总结
  3. Centos 下tomcat环境搭建
  4. Hadoop学习笔记一:单节点安装
  5. mysql安装手册(2)
  6. 支付宝“跑路”,一亿用户服务彻底关停!
  7. 我为什么要放弃RESTful,选择拥抱GraphQL?
  8. 带你认识不一样的Stream,Java8就该这么玩!
  9. 今天写出一个十分弱智的bug!
  10. 可以做技术,切不可沉湎于技术,大家怎么看?