LOAD DATA
INFILE '/.../e.txt'
BADFILE '/.../e.bad'
DISCARDFILE '/.../e.dsc'
APPEND INTO TABLE table_name
FIELDS TERMINATED BY "|"
TRAILING NULLCOLS
( rx_fill_nbr,
clm_dt date "mm/dd/yyyy"
)
sqlldr userid=username/password@databaseName control=/.../ctl_name.ctl log=/directory/log_name.log parallel=true
--direct=true
----------------------------------------
rx_fill_nbr NULLIF (rx_fill_nbr="NULL"),--默认可以为空
Fields terminated by ";" Optionally enclosed by '"'
insert,为缺省方式,在数据装载开始时要求表为空
append,在表中追加新记录
replace,删除旧记录,替换成新装载的记录
fields terminated by X'09' 字段终止于X'09',是一个制表符(TAB)
--------------------------------------------
跳过某一行:
OPTIONS(SKIP=1)
LOAD DATA
TRUNCATE INTO TABLE T1
FIELDS TERMINATED BY ','
( field1,
field2 FILLER,
field3
)
-------------------------------------------------------
导入多行记录:
LOAD DATA
INFILE *
concatenate 3 // 通过关键字concatenate 把几行的记录看成一行记录
INTO TABLE DEPT
replace
FIELDS TERMINATED BY ','
(DEPTNO,
DNAME "upper(:dname)",
LOC "upper(:loc)",
LAST_UPDATED date 'dd/mm/yyyy'
)
BEGINDATA
10,Sales, // 其实这3行看成一行 10,Sales,Virginia,1/5/2000
Virginia,
1/5/2000
-------------------------------------------------------
导入数据时修改数据:
在导入数据到数据库时,可以修改数据。注意,这仅适合于常规导入,并不适合 direct导入方式.如:
LOAD DATA
INFILE *
INTO TABLE modified_data
( rec_no "my_db_sequence.nextval",
region CONSTANT '31',
time_loaded "to_char(SYSDATE, 'HH24:MI')",
data1 POSITION(1:5) ":data1/100",
data2 POSITION(6:15) "upper(:data2)",
data3 POSITION(16:22)"to_date(:data3, 'YYMMDD')"
)
BEGINDATA
11111AAAAAAAAAA991201
22222BBBBBBBBBB990112
LOAD DATA
INFILE 'mail_orders.txt'
BADFILE 'bad_orders.txt'
APPEND
INTO TABLE mailing_list
FIELDS TERMINATED BY ","
( addr,
city,
state,
zipcode,
mailing_addr "decode(:mailing_addr, null, :addr, :mailing_addr)",
mailing_city "decode(:mailing_city, null, :city, :mailing_city)",
mailing_state
)
将数据导入多个表:
如:
LOAD DATA
INFILE *
REPLACE
INTO TABLE emp
WHEN empno != ' '
( empno POSITION(1:4) INTEGER EXTERNAL,
ename POSITION(6:15) CHAR,
deptno POSITION(17:18) CHAR,
mgr POSITION(20:23) INTEGER EXTERNAL
)
INTO TABLE proj
WHEN projno != ' '
( projno POSITION(25:27) INTEGER EXTERNAL,
empno POSITION(1:4) INTEGER EXTERNAL
)
导入选定的记录:
如下例: (01) 代表第一个字符, (30:37) 代表30到37之间的字符:
LOAD DATA
INFILE 'mydata.dat' BADFILE 'mydata.bad' DISCARDFILE 'mydata.dis'
APPEND
INTO TABLE my_selective_table
WHEN (01) <> 'H' and (01) <> 'T' and (30:37) = '19991217'
(
region CONSTANT '31',
service_key POSITION(01:11) INTEGER EXTERNAL,
call_b_no POSITION(12:29) CHAR
)
导入时跳过某些字段:
可用 POSTION(x:y) 来分隔数据. 在Oracle8i中可以通过指定 FILLER 字段实现。FILLER 字段用来跳过、忽略导入数据文件中的字段.如:
LOAD DATA
TRUNCATE INTO TABLE T1
FIELDS TERMINATED BY ','
( field1,
field2 FILLER,
field3
)
分享到:
相关推荐
这个模板可能包括数据格式要求、字段映射、数据验证规则以及导入过程的步骤,帮助用户正确地准备和组织数据,以便于DATALOAD工具进行高效导入。 "中拓license"可能是中拓公司提供的软件许可证文件,用于验证和激活...
【MySQL SQL 语句大全】MySQL数据库SQL语句模板 MySQL是一种广泛使用的开源关系型数据库管理系统,由瑞典MySQL AB公司开发,现在属于Oracle公司的产品。它以其高效、稳定和易于管理的特点,在各种规模的企业和项目...
在数据处理和ETL(Extract, Transform, Load)过程中,动态SQL是极其重要的,因为它允许根据不同的条件或变量灵活地构建和执行SQL查询。 Kettle,又称为PDI,是一款开源的数据集成工具,它提供了丰富的转换...
2. 使用<sql>和</sql>模板来执行SQL语句 可以使用<sql>和</sql>模板来执行SQL语句,例如INSERT、UPDATE和DELETE语句。只需创建一个XML模板,然后在Delphi代码中静态执行或将其放置于模板虚拟目录中,然后执行它。 ...
《SQL Server 202x数据挖掘与商业智能完全解决方案》读书笔记模板 《SQL Server 202x数据挖掘与商业智能完全解决方案》读书笔记模板是基于SQL Server 2005的商业智能解决方案的详细讲解。该书以BI解决方案的体系...
2. **准备数据文件**:根据模板,用户需要创建一个包含待导入数据的文件。文件格式可以是CSV或fixed-width,内容应与模板一致。 3. **数据验证**:在导入前,DataLoad会先进行数据验证,检查数据的完整性、一致性...
而JdbcTemplate则是Spring框架提供的一个简化数据库操作的工具,它提供了模板化的JDBC调用,使代码更加简洁和易维护。 首先,我们需要在项目中引入SQL Server 2012的驱动包,即`sqljdbc.jar`。这个驱动包包含了与...
Hibernate 提供了一种在Java应用程序中处理数据库对象的抽象层,将数据库的复杂SQL语句转化为简单的Java对象操作。它通过XML或注解方式配置映射文件,定义Java类与数据库表之间的映射关系,实现了数据的透明访问。 ...
文件中提到了数据库相关的关键字,例如ACCESS(指的是Microsoft Access数据库管理系统),以及SQL语句(如“select count(*) from tb_users”),表明在模板中涉及到了数据库的操作。 5. 用户身份验证: 文档中提到...
3. **生成SQL模板**:根据分析结果,生成一个符合Oracle创建表语句结构的模板。每个列名对应一个字段,数据类型根据分析结果设置。 4. **处理特殊需求**:如果表格文件包含复杂的数据结构,如主键、外键、索引或...
如果打开之后无模板无法新建,网上说可以在c盘搜索,比如搜索FL_1219-2_tpl001.ept等,我没能找到,我的解决方法是打开eplan>帮助>EPLAN download manager> 选择更新如下黄色的模块就可以有模板了。 如果出现...
在MySQL数据库系统中,"读取模板文件"通常是指利用SQL语句或者编程语言与MySQL交互,从外部文件中导入数据或配置信息到数据库中。这个过程涉及到几个关键知识点,包括数据导入、文件处理和SQL命令。下面我们将详细...
2. **数据恢复**:提供恢复桥接数据库和空白桥接数据库的选项,使用LOAD命令将磁带上的数据恢复。 3. **清理数据**:根据用户指定的日期范围,使用DELETE命令删除主数据库中不再需要的数据。所有表应包含一个归档...
6. **Maven Webapp:** 提到的"curd2 Maven Webapp"可能是指一个使用Maven构建的Web应用程序,其中包含了一个名为"curd2"的模块,这个模块可能包含了上述关于Hibernate CRUD操作和动态SQL的实现。 综上所述,这个...
2. `LoadTemplate`:加载Word模板文件。 3. `BindData`:将数据绑定到模板的各个占位符上。 4. `SaveAs`:保存生成的新Word文档。 开发者可能会用到诸如`Document`对象、`Range`对象和`MailMerge`方法等来实现这些...
ETL(Extract, Transform, Load)是数据处理领域的一个核心概念,主要负责从各种源系统中提取数据(Extract),经过清洗、转换(Transform)后,加载(Load)到目标系统,如数据仓库或大数据平台。在本场景中,"etl...
包括XML数据类型、XQuery语言、FOR XML子句、OPENXML函数、XML模板、updategram模板、XML Bulk Load数据批量处理以及XML Web服务等高级技术,最后以具体实例详细阐述了XML与SQL Server 2005的应用系统开发方法。...
JNTemplate是快速,轻巧,可扩展的.net模板引擎,用于生成html,xml,sql或任何其他格式的文本输出。 模板中的特殊占位符允许编写类似于c#语法的代码。 然后,模板将传递数据以呈现最终文档。 安装 使用NuGet安装...
2. **数据库连接**:NhibernateCodev支持多种数据库类型,如MySQL、Oracle、SQL Server等,能够自动检测并连接到数据库,获取表结构信息。 3. **实体类生成**:根据数据库中的表信息,自动生成具有属性和元数据的C#...