这道题目的知识点是要你熟悉外部表,怎么建外部表,外部表的数据是怎么存储的等等。请给出正确答案,并解释A B C D每项,最好用实验测试证明!

外部表的metadata(元数据)是存在数据库中,但它的数据是存储在数据库外部的操作系统文件,oracle 可以以只读的方式来访问该文件,也就是说,可以在查询语句中将 External Table 与数据库中其他表进行连接(Join),但是不能给 External Table 加上索引,并且不能插入/更新/删除数据,不能添加虚拟列,因为它不是真正的数据库表。

A是错误的

The defaultrejection limit is zero

参考:SQL Language Reference

REJECT LIMIT Thisclause lets you specify an integer as an upper limit for the
number of errors tobe logged before the statement terminates and rolls back any
changes made by thestatement. The default rejection limit is zero. For parallel DML
operations, thereject limit is applied to each parallel server.

B是错误的

外部表的元数据是在数据库里面的,数据是存储在外部的

参考:Concept
external table

A read-only tablewhose metadata is stored in the database but whose data in stored in filesoutside the database. The database uses the metadata describing external tablesto expose their data as if they were relational tables.

C是错误的

ORACLE_LOADER是从外部表转载数据入数据库表
ORACLE_DATAPUMP是从数据库表卸载数据入外部表

2个驱动的功能是相反的

参考:Concept
About ExternalTables

Oracle Databaseprovides two access drivers for external tables. The default access driver isORACLE_LOADER, which allows the reading of data from external files using theOracle loader technology. The ORACLE_LOADER access driver provides data mappingcapabilities which are a subset of the control file syntax of SQL*Loaderutility. The second access driver, ORACLE_DATAPUMP, lets you unload data—thatis, read data from the database and insert it into an external table,represented by one or more external files—and then reload it into an OracleDatabase.

D是正确的

外部表可以用CREATE TABLE AS SELECT with the ORACLE_DATAPUMP access driver来创建

参考:Concept

External TableCreation
External tables areread-only unless created with CREATE TABLE AS SELECT with the ORACLE_DATAPUMPaccess driver. Restrictions for external tables include no support for indexedcolumns, virtual columns, and column objects.

创建外部表及卸载、加载数据操作
(1)、Loader生成外部表加载文件:Administrator's Guide 15章结尾 create external table
In the scriptsdirectory, you will find prod_master.dat and prod_master.ctl. Using theinformation found in these files, 
create an externaltable names PROD_MASTER in the SH schema of the PROD database.
[oracle@rptdb1external]$ cat prod_master.ctl
load data
infile'/home/oracle/dir/prod_master.dat'
append
into table costs
fields terminatedby ","
(channel_id,prod_id,promo_id,time_id,unit_cost,unit_price)
[oracle@rptdb1external]$
[oracle@rptdb1external]$ cat prod_master.dat
6,6,6,6,6,600
7,7,7,7,7,700

create directorydir as '/opt/oracrs/external';
grant read,write ondirectory dir to sh;
create tablecosts(channel_id number,prod_id number,promo_id number,time_id number,unit_costnumber,unit_price number
);
sqlldr gyj/gyjcontrol=prod_master.ctl external_table=GENERATE_ONLY

(2)、Datapump外部表卸载:DatabaseData Warehousing Guide 12章结尾部分Extractinginto Export Files Using External Tables
CREATE TABLE ext_t1
ORGANIZATIONexternal
(
  TYPEORACLE_DATAPUMP
  DEFAULTDIRECTORY dump_file_dir
  location('t1.dat')
)
as SELECT * FROM T1WHERE ID=1;

(3)、Datapump外部表加载
SQL> createtable ext_t1
(id number,
name varchar2(100)
)
organizationexternal
(
type oracle_datapump
default directoryDUMP_FILE_DIR
location ('t1.dat')
);

最新文章

  1. Hdu 2955 Robberies 0/1背包
  2. C#读写者线程(用AutoResetEvent实现同步)(转载)
  3. Lable得到自定义高度!
  4. centos minimal 开启无线网卡 & 查看IP
  5. Appcan 3.2 Switch操作
  6. hadoop Safe mode is ON 的解决办法
  7. 怎么修改tomcat默认访问首页
  8. java Date日期去掉时分秒
  9. python----iter\next
  10. 以C语言为例的程序性能优化 --《深入理解计算机系统》第五章读书笔记
  11. 微信小程序框架集合
  12. Confluence 6 查看站点状态
  13. 【SQL 代码】SQL 语句记录(不定时更新)
  14. 垃圾wps弹出,现在连关闭按钮都不给了
  15. javascript 简略
  16. 我要重新开始学习C++了!
  17. go语言net包udp socket的使用
  18. P4047 [JSOI2010]部落划分
  19. Lattice Point or Not UVA - 11768(拓展欧几里得)
  20. AWR--service statistics

热门文章

  1. LR之Java虚拟用户
  2. linux 学习网站
  3. coroutine in c 备忘
  4. 【LeetCode】83 - Remove Duplicates from Sorted Array
  5. Tips for android
  6. centos 7搭建vpn(pptpd)服务器 (只限centos 7)
  7. (原创)jquery插件-可选可填控件
  8. MVC缓存的使用
  9. poj 3216 Repairing Company(最短路Floyd + 最小路径覆盖 + 构图)
  10. flask中的session对象方法