`

sqlload 模板二

 
阅读更多

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导入模版.rar

    这个模板可能包括数据格式要求、字段映射、数据验证规则以及导入过程的步骤,帮助用户正确地准备和组织数据,以便于DATALOAD工具进行高效导入。 "中拓license"可能是中拓公司提供的软件许可证文件,用于验证和激活...

    小度写范文【mysql,sql语句大全】mysql数据库sql语句大全模板.docx

    【MySQL SQL 语句大全】MySQL数据库SQL语句模板 MySQL是一种广泛使用的开源关系型数据库管理系统,由瑞典MySQL AB公司开发,现在属于Oracle公司的产品。它以其高效、稳定和易于管理的特点,在各种规模的企业和项目...

    kettel循环执行动态sql

    在数据处理和ETL(Extract, Transform, Load)过程中,动态SQL是极其重要的,因为它允许根据不同的条件或变量灵活地构建和执行SQL查询。 Kettle,又称为PDI,是一款开源的数据集成工具,它提供了丰富的转换...

    在Delphi中使用SQL Server的XML特性(五)——插入、更新、删除数据.pdf

    2. 使用&lt;sql&gt;和&lt;/sql&gt;模板来执行SQL语句 可以使用&lt;sql&gt;和&lt;/sql&gt;模板来执行SQL语句,例如INSERT、UPDATE和DELETE语句。只需创建一个XML模板,然后在Delphi代码中静态执行或将其放置于模板虚拟目录中,然后执行它。 ...

    《SQL Server 202x数据挖掘与商业智能完全解决方案》读书笔记模板.pptx

    《SQL Server 202x数据挖掘与商业智能完全解决方案》读书笔记模板 《SQL Server 202x数据挖掘与商业智能完全解决方案》读书笔记模板是基于SQL Server 2005的商业智能解决方案的详细讲解。该书以BI解决方案的体系...

    DataLoad 5410

    2. **准备数据文件**:根据模板,用户需要创建一个包含待导入数据的文件。文件格式可以是CSV或fixed-width,内容应与模板一致。 3. **数据验证**:在导入前,DataLoad会先进行数据验证,检查数据的完整性、一致性...

    sqlServer2012驱动包

    而JdbcTemplate则是Spring框架提供的一个简化数据库操作的工具,它提供了模板化的JDBC调用,使代码更加简洁和易维护。 首先,我们需要在项目中引入SQL Server 2012的驱动包,即`sqljdbc.jar`。这个驱动包包含了与...

    Hibernate-CRUD自用基础模板

    Hibernate 提供了一种在Java应用程序中处理数据库对象的抽象层,将数据库的复杂SQL语句转化为简单的Java对象操作。它通过XML或注解方式配置映射文件,定义Java类与数据库表之间的映射关系,实现了数据的透明访问。 ...

    web模板.pdf

    文件中提到了数据库相关的关键字,例如ACCESS(指的是Microsoft Access数据库管理系统),以及SQL语句(如“select count(*) from tb_users”),表明在模板中涉及到了数据库的操作。 5. 用户身份验证: 文档中提到...

    将固定表格文件解析成SQL

    3. **生成SQL模板**:根据分析结果,生成一个符合Oracle创建表语句结构的模板。每个列名对应一个字段,数据类型根据分析结果设置。 4. **处理特殊需求**:如果表格文件包含复杂的数据结构,如主键、外键、索引或...

    eplan破解教程,无模板,无数据库无定义解决方法

    如果打开之后无模板无法新建,网上说可以在c盘搜索,比如搜索FL_1219-2_tpl001.ept等,我没能找到,我的解决方法是打开eplan&gt;帮助&gt;EPLAN download manager&gt; 选择更新如下黄色的模块就可以有模板了。 如果出现...

    MySql练习4:读取模板文件.zip

    在MySQL数据库系统中,"读取模板文件"通常是指利用SQL语句或者编程语言与MySQL交互,从外部文件中导入数据或配置信息到数据库中。这个过程涉及到几个关键知识点,包括数据导入、文件处理和SQL命令。下面我们将详细...

    SQL Server磁带数据备份

    2. **数据恢复**:提供恢复桥接数据库和空白桥接数据库的选项,使用LOAD命令将磁带上的数据恢复。 3. **清理数据**:根据用户指定的日期范围,使用DELETE命令删除主数据库中不再需要的数据。所有表应包含一个归档...

    hibernate增删改查和动态sql

    6. **Maven Webapp:** 提到的"curd2 Maven Webapp"可能是指一个使用Maven构建的Web应用程序,其中包含了一个名为"curd2"的模块,这个模块可能包含了上述关于Hibernate CRUD操作和动态SQL的实现。 综上所述,这个...

    Cnet导出word也包括按模板导出reateWordByTemplate_cs

    2. `LoadTemplate`:加载Word模板文件。 3. `BindData`:将数据绑定到模板的各个占位符上。 4. `SaveAs`:保存生成的新Word文档。 开发者可能会用到诸如`Document`对象、`Range`对象和`MailMerge`方法等来实现这些...

    etl插件开发模板,欢迎下载

    ETL(Extract, Transform, Load)是数据处理领域的一个核心概念,主要负责从各种源系统中提取数据(Extract),经过清洗、转换(Transform)后,加载(Load)到目标系统,如数据仓库或大数据平台。在本场景中,"etl...

    SQL Server 2005 XML应用开发 光盘

    包括XML数据类型、XQuery语言、FOR XML子句、OPENXML函数、XML模板、updategram模板、XML Bulk Load数据批量处理以及XML Web服务等高级技术,最后以具体实例详细阐述了XML与SQL Server 2005的应用系统开发方法。...

    jntemplate:.NET的快速,轻量级模板引擎

    JNTemplate是快速,轻巧,可扩展的.net模板引擎,用于生成html,xml,sql或任何其他格式的文本输出。 模板中的特殊占位符允许编写类似于c#语法的代码。 然后,模板将传递数据以呈现最终文档。 安装 使用NuGet安装...

    NhibernateCodev模板生成工具2.1

    2. **数据库连接**:NhibernateCodev支持多种数据库类型,如MySQL、Oracle、SQL Server等,能够自动检测并连接到数据库,获取表结构信息。 3. **实体类生成**:根据数据库中的表信息,自动生成具有属性和元数据的C#...

Global site tag (gtag.js) - Google Analytics