77范文网 - 专业文章范例文档资料分享平台

Oracle复习资料

来源:网络收集 时间:2018-12-03 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

第二章

1.Oracle数据库系统的物理存储结构主要由3类文件组成,分别为数据文件、日志文件、控制文件。

2.用户对数据库的操作如果产生日志信息、则该日志信息首先被存储在日志缓冲区中,随后由LGWR进程保存到日志文件。

3.一个表空间物理上对应一个或多个数据文件。

4.在Oracle的逻辑存储结构中,根据存储数据的类型,可以将段分为数据段、索引段、回退段、LOB段和临时段。

5.在Oracle的逻辑存储结构中,数据块是最小的I/O单元。

6.在多进程Oracle实例系统中,进程分为用户进程、后台进程和服务器进程。当一个用户运行应用程序,如PRO*C程序或一个Oracle工具(如SQL*Plus),系统将为用户运行的应用程序建立一个用户进程。

第三章

1.标准的SQL语言语句类型可以分为:数据定义语句(DDL)、数据操纵语句(DML)和数据控制语句(DCL)。

2.在需要滤除查询结果中重复的行时,必须使用关键字Distinct;在需要返回查询结果中的所有行时,可以使用关键字ALL。

3.如果需要在SELECT子句中包括一个表的所有列,可使用符号*。

4.如果定义与组有关的搜索条件,可以把group by 子句添加到SELECT语句中。

5.当进行模糊查询时,就使用关键字LIKE和通配符\或百分号\。 6.WHERE子句可以接收FROM子句输出的数据,而HAVING子句则可以接收来自group by、FROM或where子句的输入。

7.使下列SQL语句中添加适当的表达式或子句,使语句可以正常运行。 SELECT 供应商所在城市,COUNT(供应商编号) FROM 供应商信息

GROUP BY 供应商所在城市 ORDER BY 2 DESC;

第四章

1.在SQL语句中,用于向表中插入数据的语句是Insert。

2.如果需要向表中插入一批已经存在的数据,可以在INSERT语句中使用select语句。 3.创建一个UPDATE语句来修改ARTISTS表中的数据,并且把每一行的T_ID值都改成15,应该使用的SQL语句是update artists set t_id=15;。 4.使用describe命令可以显示表的结构信息。

5.使用SQL*Plus的get命令可以将文件检索到缓冲区,并且不执行。

6.当设置了多个列的显示属性后,如果清除设置的显示属性,可以使用命令clear,而当要清除某列具体的显示属性时,需要使用命令OFF。

1

7.使用SAVE命令可以将缓冲区中的SQL命令保存到一个文件中,并且可以使用Start命令运行该文件。

8.要设置SQL*Plus显示数字时的格式可以使用NumFormat命令,而要设置某个数字列的显示格式要使用Column命令。

第五章

1.在Oracle系统中,为了实现对表、视图和索引等数据库对象进行管理,Oracle采用模式实现。

2.一个模式只能够被一个数据库用户所拥有,其创建的所有模式对象都保存在自己的模式中。

3.Char数据类型与Varchar2类型都用于存储字符串。如果定义了Char类型的字段,并且向其赋值时,字符串的长度小于定义的长度,则使用空格填充;而Varchar2类型的字段用于存储变长的字符串,即如果向该列赋值的字符长度小于定义时的长度,该列的字符长度只会是实际字符数据的长度,系统不会使用空格填充。

4.ROWID实际上保存的是记录的物理地址,因此通过ROWID来访问记录右以获得最快的访问速度。

5.在STORAGE子句中可以设置6个存储参数。其中,Initial指定为表中的数据分配的第一个盘区的大小;Next指定为存储表中的数据分配的第二个盘区大小;Pctincrease指定从第二个盘区之后,每个盘区相对于上一个盘区的增长百分比;Minextents指定允许为表中的数据所分配的最小盘区数目;Maxextents指定允许为表中的数据所分配的最大盘区数目。 6.通过数据块空间管理参数可以控制数据块中空闲空间的使用方法,其中Pctfree用于控制数据块的更新预留的空间,而Pctused用于控制数据块在删除时释放空间的门槛。

7.为Student表手动分配存储空间,并且大小由NEXT参数设置,则应使用的语句为Alter table Student allocate extent; ;如果为Student表手动分配了一个大小为128KB的新盘区,则应使用的语句为Alter table Student allocate extent(size 128k); 。

8.填写下面语句,使其可以将Class表移动到表空间SYSTEM中的数据段,并且其初始化盘区为30KB,第二个盘区为20KB,随后分配的盘区不会增长。 ALTER TABLE Class move TABLESPACE SYSTEM STORAGE ( Initial 30k Next 20k Pctincrease 0

MAXEXTENTS UNLIMITED);

9.根据约束的作用域,约束可以分为表级约束和列级约束两种。列级约束是字段定义的一部分,只能够应用在一个列上;而表级约束的定义独立于列的定义,它可以应用于一个表中的多个列。

10.填写下面的语句,使其可以为Class表的ID列添加一个名为PK_CLASS_ID的主键约束。 ALTER TABLE Class

Add constraint PK_CLASS_ID PRIMARY KEY(ID)

11.假设已经创建了CHAINED_ROWS表,填写下面的语句,以便对“业务员信息”表进行链接记录分析:

ANALYZE TABLE 业务员信息

2

List chained rows into chained_rows 第六章

1.在使用逗号连接的多表查询中,为了防止出现笛卡儿积,需要SELECT语句的Where子句中提供连接条件。

2.使用逗号连接的多表查询中,用户可以根据下述基本原则创建需要的各种查询:From子句应当包括所有的表名,在Where子句中应定义一个连接条件,当列名为多个表共有时,列名必须被限制。

3.自然连接为具有相同名称的列自动进行记录匹配,它不必指定任何同等连接条件。 4.集合运算符UNION实现了集合的并运算,操作INTERSECT实现了对集合的交运算,而MINUS则实现了减运算。

5.使用关键字连接子查询时,EXISTS关键只注重子查询是否返回行,如果子查询返回一个或多个行,那么便返回为真,否则为假。

第七章

1.PL/SQL程序块主要包含3个主要部分:声明部分、可执行部分和异常处理部分。 2.使用显式游标主要有4个步骤:声明游标、打开游标、检索数据、关闭游标。

3.在PL/SQL中,如果SELECT语句没有返回列,则会引发ORACLE错误,并引发no_data_found异常。

4.自定义异常必须使用raise语句引发。

5.查看操作在数据表中所影响的行数,可通过游标的%RowCount属性实现。 6.查看下面的程序块,DBMS_OUTPUT将显示什么结果? N DECLARE

var_a CHAR(1):='N'; BEGIN

DECLARE

var_a CHAR(2); BEGIN var_a:='Y';

END;

DBMS_OUTPUT.put_line(var_a); END;

7.查看下面的程序块,其中变量var_b的结果为 5 。 DECLARE

Var_a number:=1200; Var_b number; BEGIN

IF var_a>500 THEN var_b:=5;

ELSIF var_a>1000 THEN var_b:=10;

3

ELSE

var_b:=8; END IF; END;

8.下列程序计算由0~9之间的任意3个不相同的数字组成的三位数,共有多少种不同的组合方式?完成下列程序使其能够正确运行。 DECLARE

counter number:=0; BEGIN

FOR i IN 1..9 LOOP FOR j IN 0..9 LOOP IF i!=j THEN

FOR k IN 0..9 LOOP IF k!=i and k!=j counter:=counter+1; END IF; END LOOP; END IF; END LOOP; END LOOP;

DBMS_OUTPUT.put_line(counter); END;

第八章

1.在下面程序的空白处填写一定的代码,使该函数可以获取指定编号的商品价格。 CREATE OR REPLACE FUNCTION get_price (P_ID varchar2) return number is IS

v_price NUMBER; BEGIN

SELECT 单价

into v_price

FROM 商品信息 WHERE 商品编号=P_ID;

RETURN v_price; EXCEPTION WHEN NO_DATA_FOUND THEN DBMS_OUTPUT.PUT_LINE('查找的商品不存在!'); WHEN TOO_MANY_ROWS THEN DBMS_OUTPUT.PUT_LINE(' 程序运行错误!请使用游标');

WHEN OTHERS THEN DBMS_OUTPUT.PUT_LINE('发生其他错误!');

END get_price;

2.假设有一个程序包,其中包含了两个重载的函数max。写出下面程序调用max函数后的运行结果。

4

程序包主体:

Create or replace package body TEST is

Function max(x in number,y in number) return number is Result number; Begin If x>y then Result:=x; Else Result:=y; End if;

Return (result)'

End max;

Function max(x in number,y in number,z in number) return number is result number; Begin

Result:=test.max(x,y); Result:=test.max(result,z); Return(result); End max; End;

运行结果: 21

3.在下面程序的空白处填写适当的代码,使得调用该过程时可以统计某产地的商品数量和总价。

CREATE OR REPLACE PROCEDURE proc_demo(

Merch_place IN varchar2,

Price_sum out NUMBER, Merch_count out NUMBER)

IS

BEGIN

SELECT SUM(单价),COUNT(*) INTO Price_sum,Merch_count

FROM 商品信息 WHERE 产地=Merch_place; EXCEPTION

WHEN NO_DATA_FOUND THEN

DBMS_OUTPUT.PUT_LINE('所需数据不存在!'); WHEN OTHERS THEN

DBMS_OUTPUT.PUT_LINE('发生其他错误!'); END proc_demo;

第九章

1.为了建立外部表,首先需要指示数据文件在操作系统上的位置。现在假设在操作系统的F:\\DATAFILE文件夹中存有一个数据文件,使用create directory exterior_data as 'F:\\DATAFILE';语句使Oracle可以访问数据文件。 2.在使用CREATE TABLE 语句创建索引组织表时,必须使用organization index子句指示

5

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库Oracle复习资料在线全文阅读。

Oracle复习资料.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/zonghe/334516.html(转载请注明文章来源)
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: