zoukankan      html  css  js  c++  java
  • ORACLE sqlload 加载外部数据方法 老猫

    sqlldr是cmd下的命令,用来将文本格式数据导入到数据库中。
    命令格式:
    sqlldr username/password@sid control=*.ctl

    *.ctl格式为:
    load
    infile "d://test.txt"    外部数据文件
    infile "d://test1.txt"   可指定多个数据文件
    append into table test   向表中追加数据
    fields terminated by ","    外部文件的数据以“,”分隔
    trailing nullcols        表中的字段没有对应的值时填充空值
    (
    id integer external,    integer external 表示插入的数据是string,如果只保留integer,表示插入的数据是二进制
    name "upper(:name)",     将插入的值转换为大写
    con ":id||:name",        表中CON列的值是ID和NAME的组合值
    dt date"yyyy-mm-dd"      插入日期型数据
    )


    在append的位置还可以用以下列表中的一个值:
    insert   向表中插入值,但要求表开始时为空
    replace delete表中的数据,然后插入新值
    append   向表中追加数据
    truncate trunctate表,然后插入新值


    例:
    C:\Users\wzj>sqlldr scott/tiger control=d:/dept.ctl

    dept.ctl的内容如下:

    load
    infile "d://test.txt"   
    append into table tt
    fields terminated by ","  
    trailing nullcols      
    (
    id integer external,  
    name "upper(:name)",    
    con ":id||:name",      
    dt date"yyyy-mm-dd"     
    )

    test.txt的数据如下
    1,a,,2007-07-8
    2,b,,2008-07-8
    3,c,,2009-07-8

    SQL> desc tt ;
    名称                                                  是否为空? 类型
    --------------------------------------------- -------- -------------
    ID                                               VARCHAR2(10)
    NAME                                          VARCHAR2(20)
    CON                                            VARCHAR2(30)
    DT                                               DATE

     

    建立一个bat 文件

    sqlldr 用户名/密码@DBNAME control=xx.ctl

  • 相关阅读:
    C# 手机号码隐藏中间四位
    mysql-8.0.20-winx64 绿色版安装教程
    C# 钩子函数使用
    C#反射机制学习
    docker学习笔记二
    从主机A得到id_rsa.pub文件,在主机B创建用户danny加入该文件,实现主机A免密登录主机B
    关于mysql远程登录问题
    playframework 编译打包过程失败
    docker学习笔记一
    记一次tomcat7.0版本启动项目失败问题
  • 原文地址:https://www.cnblogs.com/oldcat/p/2156320.html
Copyright © 2011-2022 走看看