[Oracle] SQL*Loader 详细使用教程(2)- 命令行参数
sqlldr工具
SQL*Loader的客户端工具是sqlldr,在操作系统的命令行下输入sqlldr,后面不接任何参数,将显示帮助信息如下所示(所有命令行参数的简单描述及其默认值),所以你并不需要对下面的参数死记硬背,当你忘记它们时,可以通过这个方式快速查询。
- Valid Keywords:
- userid -- ORACLE username/password
- control -- control file name
- log -- log file name
- bad -- bad file name
- data -- data file name
- discard -- discard file name
- discardmax -- number of discards to allow (Default all)
- skip -- number of logical records to skip (Default 0)
- load -- number of logical records to load (Default all)
- errors -- number of errors to allow (Default 50)
- rows -- number of rows in conventional path bind array or between direct path data saves
- (Default: Conventional path 64, Direct path all)
- bindsize -- size of conventional path bind array in bytes (Default 256000)
- silent -- suppress messages during run (header,feedback,errors,discards,partitions)
- direct -- use direct path (Default FALSE)
- parfile -- parameter file: name of file that contains parameter specifications
- parallel -- do parallel load (Default FALSE)
- file -- file to allocate extents from
- skip_unusable_indexes -- disallow/allow unusable indexes or index partitions (Default FALSE)
- skip_index_maintenance -- do not maintain indexes, mark affected indexes as unusable (Default FALSE)
- commit_discontinued -- commit loaded rows when load is discontinued (Default FALSE)
- readsize -- size of read buffer (Default 1048576)
- external_table -- use external table for load; NOT_USED, GENERATE_ONLY, EXECUTE (Default NOT_USED)
- columnarrayrows -- number of rows for direct path column array (Default 5000)
- streamsize -- size of direct path stream buffer in bytes (Default 256000)
- multithreading -- use multithreading in direct path
- resumable -- enable or disable resumable for current session (Default FALSE)
- resumable_name -- text string to help identify resumable statement
- resumable_timeout -- wait time (in seconds) for RESUMABLE (Default 7200)
- date_cache -- size (in entries) of date conversion cache (Default 1000)
- no_index_errors -- abort load on any index errors (Default FALSE)
另外两种配置命令行参数的方法
如果每次都必须在sqlldr中输入参数,一定烦不胜烦,因此Oracle提供了两种方式用来存储通用的参数,方便重用。
第一种方法是使用参数文件,把通用的参数写在参数文件中,然后在sqlldr中用parfile指定该参数文件。
第二种方法是把通用参数写在控制文件的OPTIONS字句中,并在sqlldr中用control指定控制文件。
我通常采用第二种方法,因为这样可以省了参数文件,比较方便。
那如果上面三个地方都配置了同一个参数,谁的优先级大呢?sqlldr命令行 > 参数文件 > 控制文件。
导入数据到远程数据库
SQL*Loader默认是导入到本地数据库,但也支持导入到远程数据库,只要在username后面“@远程数据库连接字符串”即可,如下所示:
> sqlldr CONTROL=ulcase1.ctl
Username: scott@inst1
Password: password
命令行参数详细说明
1. 指定文件名:control, bad, log, data, discard, parfile
2. 传统路径加载:direct=false(默认);直接路径加载:direct=true
3. 最大允许错误的记录数:errors;最大允许丢弃的记录数:discardmax;最大允许加载的记录数:load
4. 只有在直接路径加载下才能用的参数:no_index_errors(默认为false,如果为true表示在加载过程中不会把index设为unusable);parallel(默认为false,如果为true表示启用并行加载);skip_index_maintenance(默认为false,如果为true表示在加载过程中停止索引的维护)
5. rows:表示达到多少行将提交,默认(传统路径加载64,直接路径加载all)
6. skip:省略最前面的记录数
[Oracle] SQL*Loader 详细使用教程(4)- 字段列表
[Oracle] SQL*Loader 详细使用教程(2)- 命令行参数的更多相关文章
- [Oracle] SQL*Loader 详细使用教程(3)- 控制文件
控制文件是SQL*Loader里最重要的文件,它是一个文本文件,用来定义数据文件的位置.数据的格式.以及配置数据加载过程的行为,在sqlldr中以control参数指定控制文件. 在控制文件里配置 ...
- [Oracle] SQL*Loader 详细使用教程(1)- 总览
SQL*Loader原理 SQL*Loader是Oracle提供的用于数据加载的一种工具,它比较适合业务分析类型数据库(数据仓库),能处理多种格式的平面文件,批量数据装载比传统的数据插入效率更高. ...
- [Oracle] SQL*Loader 详细使用教程(4)- 字段列表
在上一篇中我们介绍了SQL*Loader中最重要的文件——控制文件,而本篇要介绍控制文件中最重要的部分——字段列表,字段列表的作用是把数据文件中的记录和数据库中表的列对应起来,下面是字段列表的一个例子 ...
- [Oracle] SQL*Loader 详细使用教程(5)- 典型例子
本文介绍SQL*Loader在实际使用过程中经常用到的典型例子. 1. 表中的列比数据文件的列要少怎么办? 假设一个csv的文件如下: a1,a2,a3,a4 b1,b2,b3,b4 c1,c2,c3 ...
- VS2013中带命令行参数的调试方法---C++
今天先记录一下(也是传说中大神喜欢装逼的comment line)c++中向主函数int main(int argc,char** argv )传递4中方法,欢迎添加新方法, 然后可以参考别人写的很好 ...
- [Oracle] Data Pump 详细使用教程(5)- 命令交互模式
[Oracle] Data Pump 详细使用教程(1)- 总览 [Oracle] Data Pump 详细使用教程(2)- 总览 [Oracle] Data Pump 详细使用教程(3)- 总览 [ ...
- [Oracle] Data Pump 详细使用教程(4)- network_link
[Oracle] Data Pump 详细使用教程(1)- 总览 [Oracle] Data Pump 详细使用教程(2)- 总览 [Oracle] Data Pump 详细使用教程(3)- 总览 [ ...
- Oracle SQL Loader
C:/Documents and Settings/WWJD>sqlldr SQL :: Copyright (c) , , Oracle. All rights reserved. 用法: S ...
- oracle sql*loader的使用
用法: SQLLDR keyword=value [,keyword=value,...] 有效的关键字: userid -- ORACLE 用户名/口令 control -- 控制文件 ...
随机推荐
- Trace文件过量生成问题解决
查看用户临时文件(trace文件)所在位置 如果是trace文件(.trc)大导致的 SQL>show parameters user_dump_dest 在路径下查看 alert_log 文件 ...
- Dynamic Percentage of Operands
COMPUTER ORGANIZATION AND ARCHITECTURE DESIGNING FOR PERFORMANCE NINTH EDITION
- 求解PDE的多重网格法(MG)
多重网格法相对于普通的Jacobi迭代或者G-S迭代等能够得到和未知数的个数成线性的高效运行时间的主要原因在于:迭代初值的一步步接近真值和G_S方法的前面几步的快速收敛性. 先看一张图[1]: 这张图 ...
- C# DataGrid合并单元格
1.栏位枚举 private enum DataGridColumn { ROWNUM = , EMPID, EMPNAME, SEX, SALARY, ADRRESS, PHONE, TEL, PO ...
- 学习mysql
一 概述 1.什么是数据库 数据库就是数据的仓库. mysql是对数据库进行存储和指令操作的软件.这类软件成为数据管理系统Database Management System. 2.mysql的安装和 ...
- 优化SQL Sever查询语句的几个要点
1.不要在Where子句中的“=”左边进行函数.算术运算或其他表达式运算,否则系统将可能无法正确使用索引. 2.尽量不要在Where条件中使用函数,否则将不能利用索引. 3.在Where条件中使用明确 ...
- MacOS10.11的/usr/bin目录不可写后class-dump的处理办法
许多升级了OSX 10.11的朋友在配置class-dump的时候,会发现书上推荐的class-dump存放目录/usr/bin不再可写,如下所示: 192:~ snakeninny$ touch c ...
- 反射调用方法时的两种情况,走get set和不走get set
@Test public void test1() throws Exception{ //获取User类 Class class1=Class.forName("cn.jbit.bea ...
- 如何用jquery获取页面下HiddenField的值··
怎么用jquery获取页面上HiddenField的值·· 怎么用jquery获取页面上HiddenField的值··?HiddenField的值是从后台赋值的··· 先赋值给Hiddenfield ...
- Linux之grep命令详解
简介 grep (global search regular expression(RE) and print out the line,全面搜索正则表达式并把行打印出来)是一种强大的文本搜索工具,它 ...