Oracle数据库允许对外部表中的数据进行只读访问。外部表定义为不驻留在数据库中的表,并且可以是为其提供访问驱动程序的任何格式。通过为数据库提供描述外部表的元数据,数据库能够公开外部表中的数据,就好像它是驻留在常规数据库表中的数据一样。可以使用SQL直接和并行查询外部数据。

例如,可以SELECT,JOIN或ORDER外部表数据。还可以为外部表创建视图和同义词。但是,在外部表上不能进行DML操作(UPDATE,INSERT或DELETE),也不能创建索引。外部表还提供了一个框架,用于将任意SELECT语句的结果卸载为可由Oracle Data Pump使用的独立于平台的Oracle专有格式。

DBMS_STATS包可用于收集外部表的统计信息。收集外部表的统计信息不支持ANALYZE语句。

为外部表定义元数据的方法是通过CREATE TABLE ... ORGANIZATION EXTERNAL语句。可以将此外部表定义视为允许对外部数据运行任何SQL查询而无需首先将外部数据加载到数据库中的视图。访问驱动程序是用于读取表中外部数据的实际机制。使用外部表卸载数据时,将根据SELECT语句中的数据类型自动创建元数据(有时称为查询的形状)。

Oracle数据库为外部表提供了两个访问驱动程序。默认访问驱动程序是ORACLE_LOADER,它允许使用Oracle加载程序技术从外部文件读取数据。 ORACLE_LOADER访问驱动程序提供数据映射功能,这些功能是SQL * Loader实用程序的控制文件语法的子集。第二个访问驱动程序ORACLE_DATAPUMP允许您卸载数据 - 即从数据库读取数据并将其插入由一个或多个外部文件表示的外部表中 - 然后将其重新加载到Oracle数据库中。

Oracle数据库外部表功能为执行数据仓库常用的基本提取,转换和加载(ETL)任务提供了有价值的方法。

以下部分讨论外部表支持的DDL语句。仅支持所讨论的DDL语句,并且不支持这些语句的所有子句。

参考资料

https://docs.oracle.com/cd/B28359_01/server.111/b28310/tables013.htm#ADMIN01507

http://blog.itpub.net/31397003/viewspace-2126621/

https://www.cnblogs.com/pekkle/p/6568733.html

管理外部表(External Tables)的更多相关文章

  1. sqlloader外部表

    一创建目录 先在系统下创建 $ cd /home/oracle $ mkdir dir $ cd dir $ pwd 再在sqlplus里创建,让oracle知道这个目录 SQL> create ...

  2. Hive_Hive的数据模型_外部表

    Hive的数据模型之外部表 外部表(External Table)- 指向已经在HDFS中存在的数据,可以创建Partition- 它和内部表在元数据的组织上是相同的,而实际数据的存储则有较大的差异. ...

  3. Hive管理表,外部表及外部分区表的深入探讨

    Hive管理表,也叫内部表.Hive控制着管理表的整个生命周期,默认情况下Hive管理表的数据存放在hive的主目录:/user/hive/warehouse/下,并且当我们删除一张表时,这张表的数据 ...

  4. Oracle外部表的管理和应用

    外部表作为oracle的一种表类型,虽然不能像普通库表那么应用方便,但有时在数据迁移或数据加载时,也会带来极大的方便,有时比用sql*loader加载数据来的更为方便,下面就将建立和应用外部表的命令和 ...

  5. 分区表,桶表,外部表,以及hive一些命令行小工具

    hive中的表与hdfs中的文件通过metastore关联起来的.Hive的数据模型:内部表,分区表,外部表,桶表受控表(managed table):包括内部表,分区表,桶表 内部表: 我们删除表的 ...

  6. 一起学Hive——创建内部表、外部表、分区表和分桶表及导入数据

    Hive本身并不存储数据,而是将数据存储在Hadoop的HDFS中,表名对应HDFS中的目录/文件.根据数据的不同存储方式,将Hive表分为外部表.内部表.分区表和分桶表四种数据模型.每种数据模型各有 ...

  7. Hive 文件格式 & Hive操作(外部表、内部表、区、桶、视图、索引、join用法、内置操作符与函数、复合类型、用户自定义函数UDF、查询优化和权限控制)

    本博文的主要内容如下: Hive文件存储格式 Hive 操作之表操作:创建外.内部表 Hive操作之表操作:表查询 Hive操作之表操作:数据加载 Hive操作之表操作:插入单表.插入多表 Hive语 ...

  8. hive内部表&外部表介绍

    未被external修饰的是内部表(managed table),被external修饰的为外部表(external table):区别:内部表数据由Hive自身管理,外部表数据由HDFS管理:内部表 ...

  9. hive学习笔记之三:内部表和外部表

    欢迎访问我的GitHub https://github.com/zq2599/blog_demos 内容:所有原创文章分类汇总及配套源码,涉及Java.Docker.Kubernetes.DevOPS ...

随机推荐

  1. nginx安装,启动亲测有效

    一:安装编译工具及库文件 yum -y install make zlib zlib-devel gcc-c++ libtool  openssl openssl-devel 二:安装PCRE,让 N ...

  2. keras03 Aotuencoder 非监督学习 第一个自编码程序

    # keras# Autoencoder 自编码非监督学习# keras的函数Model结构 (非序列化Sequential)# 训练模型# mnist数据集# 聚类 https://www.bili ...

  3. webpack(一) 配置

    一.entry  & output mode: 'development', // entry: './src/index', // entry: ['./src/index', './src ...

  4. setInterval的简单理解和实验

    setInterval的用法 setInterval(fn_name,time_num); setInterval(fn_name,time_num,这里是函数参数); 意思是,现在不执行fn_nam ...

  5. [转帖]创建文件或修改文件时间 touch

    Linux命令(五)创建文件或修改文件时间 touch https://www.cnblogs.com/ay-a/p/7900274.html touch -t .x86_64.rpm 记得 wind ...

  6. Nginx HTTP框架提供的请求相关变量

    L73 binary_remote_addr 对端二进制IPV4或IPV6 一般用作限制用户请求缓存key connection 递增链接序号 connection_requests  一条TCP链接 ...

  7. Spring MVC 使用介绍(十五)数据验证 (二)依赖注入与方法级别验证

    一.概述 JSR-349 (Bean Validation 1.1)对数据验证进一步进行的规范,主要内容如下: 1.依赖注入验证 2.方法级别验证 二.依赖注入验证 spring提供BeanValid ...

  8. Oracle表之间关联更新

    经常会遇到一个表需要根据另一个表数据来更新数据,总结了核心的sql脚本命令如下: A表如下x        y--------------ka       dakb       dbkc       ...

  9. kafka基本介绍

    kafka基础知识 几个概念 kafka作为一个集群运行在一个或多个服务器上.kafka集群存储的消息是以topic为类别记录的.每个消息(也叫记录record,我习惯叫消息)是由一个key,一个va ...

  10. linux服务器上,yum、rpm、源码编译安装及卸载

    源码的编译安装及卸载 源码安装三部曲 1.生成makefile编译文件./configure 一般安装包下面都有一个configure文件,用来生成makefile编译文件常用的参数: --prefi ...