oracle_loader类型外部表

oracle_loader类型外部表1、创建目录(createanydirectory):   SQL>createuseroracleidentifiedbyoracle;用户已创建。SQL>grantdbatooracle;授权成功。SQL>grantcreateanydirectorytooracle;授权成功。SQL>connoracle/oracle

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

1、创建目录(create any directory):

    SQL> create user oracle identified by oracle;

用户已创建。

SQL> grant dba to oracle;

授权成功。

SQL> grant create any directory to oracle;

授权成功。

SQL> conn oracle/oracle
已连接。

2、创建外部表:

SQL> select * from dba_directories;

OWNER                DIRECTORY_NAME                           DIRECTORY_PATH
——————– —————————————- ——————————————-

SYS                  ADMIN_DIR                                C:\ADE\aime_vista_ship\oracle/md/admin
SYS                  DATA_PUMP_DIR                            d:\oracle\product\10.2.0\admin\orcl\dpdump\
SYS                  BDUMP                                    D:\oracle\product\10.2.0\admin\orcl\bdump
SYS                  WORK_DIR                                 C:\ADE\aime_vista_ship\oracle/work

SQL> create table alert_log(text varchar2(400))
  2  organization external (
  3  type oracle_loader
  4  default directory BDUMP
  5  access parameters(
  6  records delimited by newline
  7  nobadfile
  8  nodiscardfile
  9  nologfile
 10  )
 11  location(‘alert_orcl.log’)
 12  )
 13  reject limit unlimited
 14  /

表已创建。

SQL> select * from  alert_log  where rownum<10;

TEXT
——————————————————————
Dump file d:\oracle\product\10.2.0\admin\orcl\bdump\alert_orcl.log
Sun May 16 11:25:15 2010
ORACLE V10.2.0.3.0 – Production vsnsta=0
vsnsql=14 vsnxtr=3
Windows NT Version V6.0
CPU                 : 2 – type 586
Process Affinity    : 0x00000000
Memory (Avail/Total): Ph:372M/1021M
Sun May 16 11:25:15 2010

已选择9行。

3、外部表acess paramter获得方式

   sqlldr oracle/oracle control=user.ctl external_table=generate_only

    eg:

     1、user.ctl(语法 可以使用EM DBCONSOLE生成) :

     load

     infile ‘D:\oracle_file\data.txt’

     badfile ‘D:\oracle_file\data.bad’

     discardfile ‘D:\oracle_file\data.dis’

     errors=50

     append

     into table user_data

     fields terminated by ‘,’ optionally enclosed by ‘”‘

     trailing nullcols

     (user_name varchar2(20),

       user_id number)

    2、sqlldr oracle/oracle control=user.ctl external_table=generate_only log=user_data.log

         你会在日志中发现:

       
文件需要 CREATE DIRECTORY 语句
————————————————————————
CREATE DIRECTORY SYS_SQLLDR_XT_TMPDIR_00000 AS ‘D:\oracle_file\’

用于外部表的 CREATE TABLE 语句:
————————————————————————
CREATE TABLE “SYS_SQLLDR_X_EXT_USER_DATA”
(
  “USER_NAME” VARCHAR2(20),
  “USER_ID” NUMBER
)
ORGANIZATION external
(
  TYPE oracle_loader
  DEFAULT DIRECTORY SYS_SQLLDR_XT_TMPDIR_00000
  ACCESS PARAMETERS
  (
    RECORDS DELIMITED BY NEWLINE CHARACTERSET ZHS16GBK
    BADFILE ‘SYS_SQLLDR_XT_TMPDIR_00000′:’data.bad’
    DISCARDFILE ‘SYS_SQLLDR_XT_TMPDIR_00000′:’data.dis’
    LOGFILE ‘user_data.log_xt’
    READSIZE 1048576
    FIELDS TERMINATED BY “,” OPTIONALLY ENCLOSED BY ‘”‘ LDRTRIM
    MISSING FIELD VALUES ARE NULL
    REJECT ROWS WITH ALL NULL FIELDS
    (
      “USER_NAME” CHAR(255)
        TERMINATED BY “,” OPTIONALLY ENCLOSED BY ‘”‘,
      “USER_ID” CHAR(255)
        TERMINATED BY “,” OPTIONALLY ENCLOSED BY ‘”‘
    )
  )
  location
  (
    ‘data.txt’
  )
)REJECT LIMIT UNLIMITED

4、举例:

SQL> create or replace directory user_data_dir as ‘D:\oracle_file\’;

目录已创建。

SQL> CREATE TABLE user_data1
  2  (
  3    “USER_NAME” VARCHAR2(20),
  4    “USER_ID” NUMBER
  5  )
  6  ORGANIZATION external
  7  (
  8    TYPE oracle_loader
  9    DEFAULT DIRECTORY user_data_dir
 10    ACCESS PARAMETERS
 11    (
 12      RECORDS DELIMITED BY NEWLINE CHARACTERSET ZHS16GBK
 13      BADFILE ‘data.bad’
 14      DISCARDFILE ‘data.dis’
 15      LOGFILE ‘user_data.log’
 16      READSIZE 1048576
 17      FIELDS TERMINATED BY “,” OPTIONALLY ENCLOSED BY ‘”‘ LDRTRIM
 18      MISSING FIELD VALUES ARE NULL
 19      REJECT ROWS WITH ALL NULL FIELDS
 20      (
 21        “USER_NAME” CHAR(255)
 22          TERMINATED BY “,” OPTIONALLY ENCLOSED BY ‘”‘,
 23        “USER_ID” CHAR(255)
 24          TERMINATED BY “,” OPTIONALLY ENCLOSED BY ‘”‘
 25      )
 26    )
 27    location
 28    (
 29      ‘data.txt’
 30    )
 31  )REJECT LIMIT UNLIMITED
 32  /

表已创建。

SQL> select * from user_data1;

USER_NAME               USER_ID
——————– ———-
adfadf                        1
adfa1                         2
hdhgh                         3
a4f                           4
adf
                              5

已选择6行。

data.txt:

adfadf,1
adfa1,2
hdhgh,3
a4f,4
,
adf,
,5

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/183005.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • UpdatePanel用法详解

    UpdatePanel用法详解本文转自:http://www.cnblogs.com/shangxia/articles/2281782.html今天用做日历显示本月的考勤记录,用到了UpdatePanel控件,才发现对这个控件并不太了解,所以找了点儿资料,整理了一下给大家发上来!一、UpdatePanel的结构”ScriptManager1″runat=”server”>”Update

    2022年7月23日
    13
  • apachestruts2是什么_apache免费吗

    apachestruts2是什么_apache免费吗 1.org.apache.struts2.dispatcher.FilterDispatcher?    是Struts2的主要的Filter,负责四个方面的功能:        (1)执行Actions        (2)清除ActionContext        (3)维护静态内容        (4)清除request生命周期内的XWork的interceptors    另注

    2022年8月16日
    8
  • js正则匹配数字、大小写字母、下划线、中线和点[通俗易懂]

    js正则匹配数字、大小写字母、下划线、中线和点[通俗易懂]正则为:/[^a-z|A-Z|0-9|\-|_|\.]/gvarname=”hjhj测试[[[[[{{{{as9-._>@##$$?W??”;varregs=/[^a-z|A-Z|0-9|\-|_|\.]/g;name=name.replace(regs,””);console.log(“name:”,name);输出结果是:hjhjas9-

    2022年6月21日
    60
  • 使用adb命令安装安卓apk包[通俗易懂]

    使用adb命令安装安卓apk包[通俗易懂]虽然网上也有许多adb安装安卓包的教程,但经过自己亲自试了一下后,觉得自己写下来的才是自己的收获。一、下载安装adb工具下载地址有很多,这里是我下载的地址:https://pan.baidu.com/s/1mgGkNZM,下载文件比较齐全。下载后是个压缩包,解压后一共有5个文件,如下图:这里我都是解压到当前文件夹了因为安装包里就有个cmd,所以就省去了在运行中打开cmd,再在cmd中打开adb的步骤了,在要用adb工具时直接点击cmd.exe就可以了。如下有位网友总结的安.

    2022年6月3日
    72
  • 一般运维架构图「建议收藏」

    一般运维架构图「建议收藏」架构图:整体架构如架构图所示,client端请求通过域名解析访问到服务端负载均衡器slb或者nginx(静态内容存储在阿里云oss并通过cnd加速访问),然后经过安全组过滤,请求最终到达server端,经过业务处理并在阿里云数据库RDS读写数据后返回客户端…

    2022年7月17日
    37
  • J1939广播DM1报文

    J1939广播DM1报文一、DM1报文1,SAEJ1939-21(参考5.2)对CANID进行了重新划分,加上8个字节的数据域,构成了J1939的协议数据单元(ProtocolDataUnit,PDU)。SAEJ1939-73(参考5.7.1)中定义了DM1的优先级为6,PGN(参数组数编号)为65226(00FECA),所以源地址为0x41的DM1ID为18FECA41。2,假设源地址为0x41的节点,存在两个现行故障,故障的SPN,FMI分别为(521132,1),(521008,3),按照DTC结构

    2022年6月2日
    278

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号