我的编程空间,编程开发者的网络收藏夹
学习永远不晚

sqlloader外部表

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

sqlloader外部表

一创建目录

 

先在系统下创建

$ cd /home/oracle
$ mkdir dir
$ cd dir
$ pwd

 

再在sqlplus里创建,让oracle知道这个目录

SQL> createdirectory dir as '/home/oracle/dir';

 

最后授权

SQL> grant all ondirectory dir to public;

 

 

 

 

二创建数据源文件

$ cd dir

$ vi prod_my.data
360,Jane,Janus,ST_CLERK,121,17-MAY-2001,3000,0,50,jjanus
361,Mark,Jasper,SA_REP,145,17-MAY-2001,8000,.1,80,mjasper
362,Brenda,Starr,AD_ASST,200,17-MAY-2001,5500,0,10,bstarr
363,Alex,Alda,AC_MGR,145,17-MAY-2001,9000,.15,80,aalda
401,Jesse,Cromwell,HR_REP,203,17-MAY-2001,7000,0,40,jcromwel
402,Abby,Applegate,IT_PROG,103,17-MAY-2001,9000,.2,60,aapplega
403,Carol,Cousins,AD_VP,100,17-MAY-2001,27000,.3,90,ccousins
404,John,Richardson,AC_ACCOUNT,205,17-MAY-2001,5000,0,110,jrichard

 

查看

$ cat prod_my.data

 

 

 

 

 

三创建外部表external

CREATE TABLEscott.prod_my(
c1 number(5),
c2 varchar2(20),
c3 varchar2(20),
c4 varchar2(30),
c5 number(5),
c6 date,
c7 number(8,3),
c8 number(5,2),
c9 number(5,2),
c10 varchar2(30)
)
  ORGANIZATION EXTERNAL (TYPE ORACLE_LOADERDEFAULT DIRECTORY dir
                         ACCESS PARAMETERS(FIELDS TERMINATED BY ","
                                           OPTIONALLY ENCLOSED BY '"'
                                           MISSING FIELD VALUES ARE NULL)
                         LOCATION('prod_my.data'));

 

解释

    FIELDS TERMINATED BY","    代表列与列之间用 ","单引号分割

    OPTIONALLY ENCLOSED BY"" 代表列值是一句话用("")双引号引起来

    MISSING FIELD VALUES ARENULL 代表(,,)逗号与逗号之间可以是空值

 

 

 

 

四查询外部表

col c2 for a8
col c3 for a10
col c4 for a10
col c10 for a10
selectc1,c2,c3,c5,c6,c7,c8,c9 from scott.prod_my;
        C1 C2       C3                 C5 C6                C7         C8         C9
---------- ------------------ ---------- --------- ---------- ---------- ----------
       360 Jane     Janus             121 17-MAY-01       3000          0         50
       361 Mark     Jasper            145 17-MAY-01       8000         .1         80
       362 Brenda   Starr             200 17-MAY-01       5500          0         10
       363 Alex     Alda              145 17-MAY-01       9000        .15         80
       401 Jesse    Cromwell          203 17-MAY-01       7000          0         40
       402 Abby     Applegate         103 17-MAY-01       9000         .2         60
       403 Carol    Cousins           100 17-MAY-01      27000         .3         90
       404 John     Richardson        205 17-MAY-01       5000          0        110

 

select* from scott.prod_my; 查看全部信息

 

 

 

 

                                      然后将外部表导入到数据库中

 

一先创建实体的表

CREATE TABLEscott.ldr(
c1 number(5),
c2 varchar2(20),
c3 varchar2(20),
c4 varchar2(30),
c5 number(5),
c6 date,
c7 number(8,3),
c8 number(5,2),
c9 number(5,2),
c10 varchar2(30)
);

 

 

 

 

二再创建sqlloader控制文件

$ cd dir
$ vi ldr.ctl
load data
infile'prod_my.data'
append
into table scott.ldr
fields terminated by','
optionally enclosedby '"'
TRAILING NULLCOLS
(
c1,
c2,
c3,
c4,
c5,
c6,
c7,
c8,
c9,
c10
)

 

开始导入

/u01/app/oracle/product/11gr2/db_1/bin

[oracle@HE3bin]$ ./sqlldr scott/tiger control='/home/oracle/sqlloader/ldr.ctl'log='/home/oracle/sqlloader/ldr.log'

 

 

 

第一步先问文件的位置查处后,修改 infile【/home/oracle/dir/prod_my.data】

第二步再创建实体的表建立后输入表名 into table 【scott.ldr】

第三步在infile 'prod_my.data'下面,加入一个参数【append】

第四步增加一行TRAILING NULLCOLS,

注意:最后不要加【 ; 】分号结束,否则会报错

 

解释

append:代表如果表里有数据可以继续添加

TRAILINGNULLCOLS:代表可以将空行干掉

                  (由于回车产生,也就是空行)


免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

sqlloader外部表

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

hive内部表和外部表的区别详解

Hive内部表:默认创建的表是内部表。hive完全管理表(元数据和数据)的声明周期,类似于RDBMS的表。当删除编程客栈表时,他会删除源数据以及表的元数据。Hive外部表:外部表的数据不是Hive拥有或者管理的,只管理元数据的声明周期。要
2023-04-26

HIVE外部表为什么比内部表要慢

这篇文章主要为大家展示了“HIVE外部表为什么比内部表要慢”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“HIVE外部表为什么比内部表要慢”这篇文章吧。 以HBASE为例,如果把HIVE作为一个H
2023-06-03

hive的内部表和外部表有哪些区别

小编给大家分享一下hive的内部表和外部表有哪些区别,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!1 内部表 1.1 创建表默认使用的是MANAGED_TA
2023-06-02

PostgreSQL中的外部表和外部数据源如何使用

在PostgreSQL中,外部表和外部数据源可以通过使用外部数据包装器(Foreign Data Wrapper)来实现。外部数据包装器是一个用于访问外部数据源的插件,它可以让用户在数据库中创建外部表,以便直接查询外部数据源中的数据。要使
PostgreSQL中的外部表和外部数据源如何使用
2024-03-14

Hive-内部表&外部表&分区表&扩展命令

先看下如何创建数据表create [external] table if not exists 表名(列名数据类型 [comment 本列注释],...)[comment 表注释][partitioned by (列名数据类型 [comment 本列注释],.
Hive-内部表&外部表&分区表&扩展命令
2017-05-20

CSS外部样式表的简介

这篇“CSS外部样式表的简介”除了程序员外大部分人都不太理解,今天小编为了让大家更加理解“CSS外部样式表的简介”,给大家总结了以下内容,具有一定借鉴价值,内容详细步骤清晰,细节处理妥当,希望大家通过这篇文章有所收获,下面让我们一起来看看具
2023-06-06

css如何引用外部样式表

这篇文章主要介绍“css如何引用外部样式表”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“css如何引用外部样式表”文章能帮助大家解决问题。CSS引用外部样式表的优点:一般的浏览器都带有缓存功能,所以
2023-07-04

如何引用CSS外部样式表

这篇文章主要为大家展示了如何引用CSS外部样式表,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带大家一起来研究并学习一下“如何引用CSS外部样式表”这篇文章吧。css是什么意思css是一种用来表现HTML或XML等文件样式的
2023-06-06

Flex中外部样式表怎么用

这篇文章主要为大家展示了“Flex中外部样式表怎么用”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Flex中外部样式表怎么用”这篇文章吧。Flex使用层级样式表(CSS)Flex使用层级样式表标
2023-06-17

编程热搜

目录