数据库基础(Oracle)试卷及答案
数据库基础(Oracle)试卷 一、填空题(每小题4分,共20分)
1、数据库管理技术经历了 人工管理、文件系统、数据库系统 三个阶段
2、数据库三级数据结构是 外模式、模式、内模式
3、Oracle数据库中,SGA由 数据库缓冲区,重做日志缓冲区,共享池 组成
4、在Oracle数据库中,完正性约束类型有 Primay key约束。Foreign key约束,Unique约束,check约束,not need约束 5、PL/SQL中游标操作包括 声明游标,打开游标,提取游标,关闭游标
二、正误判断题(每小题2分,共20分) 1、数据库中存储的基本对象是数据(T) 2、数据库系统的核心是DBMS(T) 3、关系操作的特点是集合操作(T)
4、关系代数中五种基本运算是并、差、选择、投影、连接(F) 5、Oracle进程就是服务器进程(F)
6、oraclet系统中SGA所有用户进程和服务器进程所共享(F) 7、oracle数据库系统中数据块的大小与操作系统有关(T) 8、oracle数据库系统中,启动数据库和第一步是启动一个数据库实例(F)
9、PL/SQL中游标的数据是可以改变的(T)
10、数据库概念模型主要用于数据库概念结构设计(F) 三、简答题(每小题7分,共35分)
1、何谓数据与程序的逻辑独立性和物理独立性?
数据库系统中的DBMS为三级模式结构提供了两层映像机制:外模式/模式映像和模式/内模式映像。这两层映像机制保证了数据库系统中数据的逻辑独立性和物理独立性。
外模式/模式映像定义了数据库中不同用户的外模式与数据库逻辑模式之间的对应关系。
当数据库模式发生变化时,例如关系数据库系统中增加新的关系、改变关系的属性数据类型等,可以调整外模式/模式间的映像关系,保证面向用户的各个外模式不变。应用程序是依据数据的外模式编写的,从而应用程序不必修改,保证了数据与应用程序的逻辑独立性,简称数据的逻辑独立性。
模式/内模式映像定义了数据库中数据全局逻辑结构与这些数据在系统中的物理存储组织结构之间的对应关系。
当数据库中数据物理存储结构改变时,即内模式发生变化,例如定义和选用了另一种存储结构,可以调整模式/内模式映像关系,保持数据库模式不变,从而使数据库系统的外模式和各个应用程序不必随之改变。这样就保证了数据库中数据与应用程序间的物理独立性,简称数据的物理独立性。
2、试述关系代数中等值连接与自然连接的区别与联系? 连接运算符是“=”的连接运算称为等值连接。它是从关系R与S的广义笛卡尔积中选取A,B属性值相等的那些元组
自然连接是一种特殊的等值连接,它要求两个关系中进行比较的分量必须是相同的属性组,并且在结果中把重复的属性列去掉 3、何谓数据库,数据库设计一般分为哪些阶段?
1) 数据库(Database)是按照数据结构来组织、存储和管理数据的仓库。
2) 需求设计,概念设计,逻辑设计,物理设计,实施、运行、维护 4、简述Oracle逻辑数据库的组成? 表空间、段、区、数据块
5、试任举一例说明游标的使用方法? ---创建表 create table test (
name char(30), age char(40), subject char(20), id numeric(10) )
--插入数据
insert into test values ('hehe','haha','hh',4) ---定义变量
declare @name char(30) declare @age char(40) declare @subject char(20) declare @id numeric ----创建游标 declare himm1 cursor
for select [name],age,subject,id from test ---打开游标 open himm1
--- 使用游标进行翻阅
fetch himm1 into @name, @age, @subject, @id
--注意@@FETCH_STATUS是SQL SERVER里面的变量和ORACLE的@@sqlstatus有区别。 while (@@FETCH_STATUS = 0) begin ---打印 print @name print @age print @subject
print @id
fetch himm1 into @name, @age, @subject, @id end
----关闭游标(关闭游标结果集,而不是它的全部内容) close himm1
---关闭游标(释放游标所占用的内存,并且可以让游标的名字可以被再次使用) deallocate himm1
五、设有雇员表emp(empno,ename,age,sal,tel,deptno),
其中:empno-----编号,name------姓名,age -------年齡,sal-----工资,tel-----电话 deptno-----部门号。
请按下列要求分别晨SQL*PLUS下编程。(每小题3分,共15分)? 1、查询家有电话的职工信息。
SQL>SELECT * FROM emp WHERE tel NOT NULL; ? 2、查询工资在500至800元之间的雇员信息
SQL>SELECT * FROM emp WHERE BETWEEN 500 AND 800;
? 3、按年龄递增顺序显示雇员编号、姓名、年龄、工资 SQL>SELECT empno,ename,age,sal FROM emp ORDER BY age ASC;
百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说教育文库数据库基础(Oracle)试卷及答案在线全文阅读。
相关推荐: