98. Which two statements are true regarding the usage of the SQL*Loader utility? (Choose two.)
A.You can load data into multiple tables during the same load session.
B.You can load data from multiple files to a table during the same load session.
C.You cannot perform selective data loading based on the values available in the records.
D.You can use an export file generated by the EXPDP utility as an input data file to load the data.
E.You can load data only if the input file is available on the disk and tape but not in a named pipes.
Answer: AB
答案解析:
参考:
可以指定多个infile子句,即B正确。
可以指定一个或多个into table块,说明A正确。
SQL*Loader 可将外部文件中的数据加载到Oracle DB 的表中。它具有一个功能强大的数据分析引擎,因此对数据文件中数据的格式没有什么限制。
SQL*Loader 使用以下文件:
输入数据文件:SQL*Loader 从控
制文件中指定的一个或多个文件(或操作系统的等效文件)中读取数据。从SQL*Loader 的角度看,数据文件中的数据是按记录组织的。一个特定的数据文件可采用固定记录格式、可变记录格式或流记录格式。可通过控制文件中的INFILE参数指定记录格式。如果未指定记录格式,默认格式为流记录格式。
控制文件:控制文件是一个文本文件,它是使用SQL*Loader 可识别的语言编写的。控制文件指示SQL*Loader 在何处查找数据、如何分析和解释数据以及在何处插入数据等等。
尽管不能精确地定义,但可认为控制文件包含三个段。
• 第一段包含如下所示的会话范围信息:
- 全局选项,如输入数据文件名和要跳过的记录
-
用于指定输入数据位置的INFILE子句,可以多个
- 要加载的数据
• 第二个段包括
一个或多个INTO TABLE块。其中每一个块都包含要在其中加载数据的表的信息(如表名和表列)。
• 第三个段是可选段,如果存在,则其中包含输入数据。
日志文件:SQL*Loader 开始执行时,会创建日志文件。如果不能创建日志文件,执行就会终止。日志文件包含加载操作的详细说明,包括加载过程中发生的任何错误的说明。
坏文件:坏文件中包含被SQL*Loader 或Oracle DB 拒绝的记录。当输入格式无效时,SQL*Loader 就会拒绝数据文件记录。SQL*Loader 接受处理某一数据文件记录后,会将该数据文件记录发送到Oracle DB,以便能够作为一行插入到表中。如果Oracle DB 确定该行有效,就会将该行插入到表中;如果确定该行无效,则会拒绝该记录,然后SQL*Loader 会将该记录放入坏文件中。
放弃文件:仅当需要这种文件并且指定了应启用放弃文件时,才会创建此文件。放弃文件中包含的记录是因不符合控制文件指定的任何记录选择标准而从加载中过滤掉的记录。