`

oracle sqlldr控制文件模板

阅读更多

 

 

 

 

 

文章来源:http://www.cnblogs.com/twyth/archive/2009/08/16/1547141.html
  1Sqlldr userid=lgone/tiger control=a.ctl 
  2LOAD DATA 
  3INFILE 't.dat' // 要导入的文件 
  4// INFILE 'tt.date' // 导入多个文件 
  5// INFILE * // 要导入的内容就在control文件里 下面的BEGINDATA后面就是导入的内容, *和't.dat'不能同时存在
  6
  7INTO TABLE table_name // 指定装入的表 
  8BADFILE 'c:bad.txt' // 指定坏文件地址 
  9
10************* 以下是4种装入表的方式 
11APPEND // 原先的表有数据 就加在后面 
12// INSERT // 装载空表 如果原先的表有数据 sqlloader会停止 默认值 
13// REPLACE // 原先的表有数据 原先的数据会全部删除 
14// TRUNCATE // 指定的内容和replace的相同 会用truncate语句删除现存数据 
15
16************* 指定的TERMINATED可以在表的开头 也可在表的内部字段部分 
17FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"' 
18// 装载这种数据: 10,lg,"""lg""","lg,lg" 
19// 在表中结果: 10 lg "lg" lg,lg 
20// TERMINATED BY X '09' // 以十六进制格式 '09' 表示的 
21// TERMINATED BY WRITESPACE // 装载这种数据: 10 lg lg 
22
23TRAILING NULLCOLS ************* 表的字段没有对应的值时允许为空 
24
25************* 下面是表的字段 
26
27col_1 , col_2 ,col_filler FILLER // FILLER 关键字 此列的数值不会被装载 
28// 如: lg,lg,not 结果 lg lg 
29
30// 当没声明FIELDS TERMINATED BY ',' 时 
31// ( 
32// col_1 [interger external] TERMINATED BY ',' , 
33// col_2 [date "dd-mon-yyy"] TERMINATED BY ',' , 
34// col_3 [char] TERMINATED BY ',' OPTIONALLY ENCLOSED BY 'lg' 
35// ) 
36// 当没声明FIELDS TERMINATED BY ','用位置告诉字段装载数据 
37// ( 
38// col_1 position(1:2), 
39// col_2 position(3:10), 
40// col_3 position(*:16), // 这个字段的开始位置在前一字段的结束位置 
41// col_4 position(1:16), 
42// col_5 position(3:10) char(8) // 指定字段的类型 
43// ) 
44
45BEGINDATA // 对应开始的 INFILE * 要导入的内容就在control文件里 
4610,Sql,what 
4720,lg,show 
48
49===================================================================================== 
50//////////// 注意begindata后的数值前面不能有空格 
51
521 ***** 普通装载 
53LOAD DATA 
54INFILE * 
55INTO TABLE DEPT 
56REPLACE 
57FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"' 
58(DEPTNO, 
59DNAME, 
60LOC 
61
62BEGINDATA 
6310,Sales,"""USA""" 
6420,Accounting,"Virginia,USA" 
6530,Consulting,Virginia 
6640,Finance,Virginia 
6750,"Finance","",Virginia // loc 列将为空 
6860,"Finance",,Virginia // loc 列将为空 
69
702 ***** FIELDS TERMINATED BY WHITESPACE 和 FIELDS TERMINATED BY x'09' 的情况 
71LOAD DATA 
72INFILE * 
73INTO TABLE DEPT 
74REPLACE 
75FIELDS TERMINATED BY WHITESPACE 
76-- FIELDS TERMINATED BY x'09' 
77(DEPTNO, 
78DNAME, 
79LOC 
80
81BEGINDATA 
8210 Sales Virginia 
83
843 ***** 指定不装载那一列 
85LOAD DATA 
86INFILE * 
87INTO TABLE DEPT 
88REPLACE 
89FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"' 
90( DEPTNO, 
91FILLER_1 FILLER, // 下面的 "Something Not To Be Loaded" 将不会被装载 
92DNAME, 
93LOC 
94
95BEGINDATA 
9620,Something Not To Be Loaded,Accounting,"Virginia,USA" 
97
984 ***** position的列子 
99LOAD DATA 
100INFILE * 
101INTO TABLE DEPT 
102REPLACE 
103( DEPTNO position(1:2), 
104DNAME position(*:16), // 这个字段的开始位置在前一字段的结束位置 
105LOC position(*:29), 
106ENTIRE_LINE position(1:29
107
108BEGINDATA 
10910Accounting Virginia,USA 
110padding: 0px; margin: 0

分享到:
评论

相关推荐

    oracle sqlldr多文件批量导入

    综上所述,Oracle SQL*Loader的多文件批量导入涉及到了控制文件的编写、条件语句的运用以及批处理脚本的编写,通过合理配置和优化,可以有效地处理大量数据的导入任务。在实际操作中,应根据具体场景选择最合适的...

    Oracle64位 sqlldr命令安装包

    也找不到其他资源,最后去找安装了完整版的同事,借鉴这个下载链接里面的文件,删除了其他没用到的东西(经历了好几个小时,一个一个dll测试过去),最后sqlplus, sqlldr可用。 如果是遇到sql*loader 284错误的,是...

    sqlldr自动生成控制文件导入到表

    SQL*Loader(简称sqlldr)是Oracle数据库提供的一款强大的数据加载工具,用于将文本文件中的数据高效地导入到数据库表中。在这个过程中,通过自动生成控制文件,可以实现自动化导入,甚至达到备份的目的。以下是对这...

    oracle 11.2客户端 sqlldr相关文件

    oracle 11.2客户端(linux) sqlldr相关文件 如果oracle客户端用的是rpm方式安装: sqlldr命令放在bin 其他文件放在lib 如果oracle客户端用的是直接解压方式: 所有都放在根目录即可

    C# 通过oracle sqlldr 将TXT批量导入oracle

    C# 通过oracle sqlldr 将TXT批量导入oracle 一个文件夹里有大量的TXT文件,以"~"区分各字段. 这个程序能批量将此文件夹里的所有的文件导入oralce 并按日期把已导入的TXT文件复制另一个文件夹

    oracle_Sqlldr的使用

    它是通过读取一个控制文件,然后加载指定的数据文件到数据库中。SQL*Loader支持多种数据加载方式,可以处理不同格式的数据文件,包括定长、可变长度、二进制等类型。它允许用户自定义数据导入的逻辑,例如如何分割...

    Oracle中的sqlldr用法.doc

    注意,data参数只能指定一个数据文件,如果控制文件中也指定了数据文件,那么sqlldr将优先加载data参数指定的数据文件。 discard 参数discard指定了丢弃的数据文件的名称和路径,丢弃的数据文件记录了加载过程中被...

    sqlldr配置文件详解.zip

    修改参数为自己本机配置后,运行脚本,复制输出结果到cmd下,直接运行即可批量将excel文件内容传输至指定Oracle表格中。 包含: sqlldr配置文件详解.sql 批量sqlldr导入.py 批量导入文件SQL语句 示例:祁东县.ctl

    Oracle Client sqlldr和ulus.msb文件

    1. **创建控制文件**:控制文件是`sqlldr`操作的核心,它定义了数据源、目标表、字段映射、转换规则等。 2. **准备数据文件**:根据控制文件的要求,整理好数据文件,确保数据格式正确。 3. **运行sqlldr命令**:在...

    Oracle sqlldr 大批量数据导入工具

    Oracle sqlldr 大批量数据导入工具使用实例,通过Oracle 自带的sqlldr 工具可快速导入大批量的数据至Oracle中。 工具使用前提条件: 1.安装的Oracle Client 不能为精简版,要不然就找不到sqlldr.exe 2.将Oracle的...

    windowns下利用bat命令+oracle的sqlldr功能导入数据

    3. **控制文件**:控制文件是SQL*Loader的核心,它定义了数据文件的结构、字段映射以及加载规则。比如字段的开始位置、长度、数据类型、是否允许空值等。 **二、使用BAT命令** 1. **批处理脚本**:批处理脚本(....

    Oracle11G客户端64位(sqlldr可用)

    oracle11g基本客户端,主要是sqlplus,sqlldr,exp,imp这几个命令。最最主要的还是sqlldr,想找个单独可用的sqlldr,在Oracle 10g Client 精简优化安装包不到12M ...

    oracle sqlldr;;merge;分组排序;条件赋值;表连接。简单示例

    实用基础SQL语句;oracle sqlldr;SQL基础语句;merge;分组排序;条件赋值;表连接。简单示例,Oracle数据库文档数据导入

    Oracle11G的Linux64的sqlldr版本11.2.0.4

    用的是11.2.0.4的Instant Client,Oracle没给sqlldr,Tools里面也没有(12C就有)。 网上下载了几个都是11.2.0.1的sqlldr,包括标了版本号的,都需要替换库文件。 这个是自己安装p13390677_112040_Linux-x86-64_4of7...

    oracle sqlldr 导入乱码问题

    2. 调整控制文件:在SQL*Loader的控制文件中,需要明确指定数据文件的字符集。例如,如果数据文件是UTF-8编码,可以添加以下语句: ``` OPTIONS (encoding='UTF8') ``` 3. 检查数据库字符集:查询数据库的NLS_...

    MySQL导出数据并通过sqlldr导入oracle

    同时代码还会生成sqlldr命令需要用到的control文件和bat文件,以及连接Oracle的配置文件,只要将MySQL导出的数据文件合到一起,执行bat文件,即可完成数据导入到Oracle的任务。所有文件都是以导入导出的那张表的表名...

    Oracle sqlldr导入一个日期列实例详解

    首先,我们需要了解SQL*Loader的控制文件(control file),它是SQL*Loader操作的核心。在给出的例子中,`load_date.ctl`就是控制文件,其中包含了关于如何解析和加载数据的指令。以下是控制文件中的关键部分: ```...

    sqlldr导入带有自动增加的数据

    通过执行`sqlldr scott/chen control=/home/oracle/testb.ctl data=/home/oracle/b.txt`命令,数据将按照控制文件中指定的方式被加载到`testb`表中。 ### 结论 通过上述分析,我们可以看到SQL*Loader在处理带有...

    浅谈ORACLE的SQLLDR

    以上两个实例展示了SQL Loader的基本使用方法及其灵活性,可以根据具体需求调整控制文件的内容来实现高效的数据导入。通过这些示例,可以了解到SQL Loader不仅是一个强大的数据导入工具,也是进行数据清洗和预处理的...

    Windows版oracle10g精简客户端(带sqlldr)

    sqlldr的使用则需要创建一个控制文件,指定数据文件、目标表、字段映射等信息,然后执行sqlldr命令进行数据加载。 总之,"Windows版oracle10g精简客户端(带sqlldr)"是一个为了方便开发者和管理员而定制的工具集,...

Global site tag (gtag.js) - Google Analytics