Oracle数据库管理习题及答案.docx
- 文档编号:27175870
- 上传时间:2023-06-27
- 格式:DOCX
- 页数:67
- 大小:95.84KB
Oracle数据库管理习题及答案.docx
《Oracle数据库管理习题及答案.docx》由会员分享,可在线阅读,更多相关《Oracle数据库管理习题及答案.docx(67页珍藏版)》请在冰豆网上搜索。
Oracle数据库管理习题及答案
1.6习题
一。
填空题
1、关系模型提供了3类完整性规则,分别是_______、_______、_______。
参考答案:
实体完整性规则、参照完整性规则、用户定义的完整性规则
2、RDBMS由两部分组成,即_______、_______两部分。
答案:
数据库系统内核、数据字典
3、关系数据库模型支持三种类型的表关联关系:
_______、_______、_______.
答案:
一对一、一对多以及多对多
4、数据模型的种类有很多,例如_______、_______、_______和_______等。
目前理论最成熟、使用最普及的是_______。
答案:
层次模型、网状模型、关系数据模型、面向对象模型。
关系数据模型
二、选择题
1、Oracle11g版本号中字母“g”的含义是()
A.产品类型的“代”(generation)B.网格(gridding)
C.集成(integration)D.无含义
答案:
A
2、设计性能较优的关系模式称为规范化,规范化主要的理论依据是()
A.关系规范化理论B.关系运算理论
C.关系代数理论D.数理逻辑
答案:
A
3、消除了部分函数依赖的1NF的关系模式必定是()
A.1NFB.2NFC.3NFD.4NF
答案:
B
4、当B属于函数依赖于A属性时,属性B与A的联系是()
A.1对多B.多对1C.多对多D.以上都不是
答案:
B
5、根据关系数据库规范化理论,关系数据库中的关系要满足第一范式。
下面“部门”关系中,因哪个属性而使它不满足第一范式?
部门(部门号,部门名,部门成员,部门总经理)
A.部门总经理B.部门成员
C.部门名D.部门号
答案:
B
6、下列不属于Oracle数据库数据类型的是()
A.NUMBERB.FLOATC.CLOBD.BOOLEAN
答案:
D
三、简答题
1、简述数据库与数据库管理系统的区别。
参考答案:
数据库是用来存储信息或数据的机制,是按照数据结构来组织、存储和管理数据的仓库。
可以被定义为是在计算机存储设备上合理存放的,互相关联的数据集合.
数据库管理系统,它是基于某种结构数据模型、以统一的方式管理和维护数据库,并提供访问数据库接口的通用软件。
2、简述数据库规范化的概念及其作用。
参考答案:
数据库规范化,又称数据库或资料库正规化、标准化,是数据库设计中的一系列原理和技术,以减少数据库中数据冗余,增进数据的一致性。
四、应用题
1、设有一教学管理数据库,其属性为:
学号(S#),课程号(C#),成绩(G),任课教师(TN),教师所在的系(D)。
这些数据有下列语义:
–学号和课程号分别与其代表的学生和课程一一对应.
–一个学生所修的每门课程都有一个成绩.
–每门课程只有一位任课教师,但每位教师可以有多门课程.
–教师中没有重名,每个教师只属于一个系.
(1)试根据上述语义确定函数依赖集。
(2)如果用上面所有属性组成一个关系模式,那么该关系模式为何模式?
并举例说明在进行增、删操作时的异常现象.
(3)分解为具有依赖保持和无损连接的3NF。
参考答案:
(1)F={(S#,C#)→G,C#→TN,TN→D}
(2)关系模式为1NF,因为该关系模式的候选码为(S#,C#),则非主属性有G,TN和D。
又∵F中有C#→TN,∴存在非主属性TN对候选码(S#,C#)的部分依赖,即:
若新增设一门课程而暂时还没有学生选修时,则因缺少码S#值而不能进行插入操作。
若某个教师调离学校要删除有关信息时,会将不该删除的课程(C#)信息删除。
(3)∵Fm={(S#,C#)→G,C#→TN,TN→D}
∴ρ={R1,R2,R3}
其中:
–R1=(S#,C#,G)
–R2=(C#,TN)
–R3=(TN,D)
2.7习题
一、填空题
1、常用的Oracle服务主要有如下四种,分别是_______、_______、_______、_______.
参考答案:
OracleDBConsoleorcl、OracleJobScheduler〈SID〉、OracleService〈SID>、
Oracle 2、Oracle数据库启动的三个阶段是: _______、_______、_______。 参考答案: 启动实例、打开控制文件、打开数据库 3、Oracle数据库关闭的四个选项是: _______、_______、_______、_______。 参考答案: normal、immediate、transaction、abort 二、选择题 1、系统标识符(SID)是指唯一在网络域中区别于其他数据库的数据库实例名,下面合法的SID是() A.my2orclB.myoracletestC.my_orclD.my@orcl 参考答案: A 2、安装OracleDatabase11g可以选择安装类型,下列不属于OracleDatabase11g的安装类型是() A.企业版B.个人版 C.定制D.免费版 参考答案: D 三、简答题 1、简述OracleDatabase11g在Windows系统下的安装步骤。 参考答案: 选择安装方法、选择安装类型、指定主目录详细信息、产品特定的先决条件检查、选择配置选项、安装、安装结束。 2、简述Oracle中用户和模式的关系。 参考答案: 用户是用连接数据库和访问数据库对象的.模式是数据库对象的集合.模式对象是数据库数据的逻辑结构.通俗地说,模式是用来创建oracle中各种对象,而用户用来连接数据库并访问模式中对象,在oracle中模式与用户是一一对应关系。 四、上机练习 1、按照书中步骤,正确安装OracleDatabase11g,创建数据库,并且创建用户. 2、从操作系统提示符界面,采用上题创建的用户登录数据库,并创建EMPLOYEES表进行测试.(表结构如下图) 3、客户端连接Oracle数据库时,默认端口为1521。 创建一个新的监听程序,其端口为1522。 然后将ORCL注册于该监听程序。 3.5习题 一、填空题 1.查看表结构时,所使用的命令是___________,该命令可以简写为___________。 参考答案: DESCRIBE、DESC 2.使用SQL*Plus语句快速编辑SQL语句时,可以使用的命令有APPEND(可以简写为A)命令、___________(可以简写为C)命令、___________(可以简写为I)、___________(可简写为L)命令,以及RUN(可以简写为R)命令。 参考答案: CHANGE、INPUT、LIST 3.在SQL*Plus工具中,可以使用SAVE命令将缓冲区内容保存到文件;可以使用___________命令读取并运行文件内容;可以使用___________命令编辑缓冲区内容或文件内容;还可以使用SPOOL命令复制输出结果到文件。 参考答案: START、EDIT 4.在SQL语句中,如果在某个变量前面使用了&符号,那么就表示该变量是一个临时变量。 定义变量,可以使用___________或ACCEPT命令;删除变量,可以使用UNDEFINE命令. 参考答案: DEFINE 5.在SQL*Plus中格式化查询结果时,COLUMN命令可以对列格式化显示效果,PAGESIZE命令可以___________,LINESIZE命令可以___________. 参考答案: 设置页的大小、设置行宽度 6.创建简单报表时,使用___________命令和___________命令,分别为报表设置页眉和页脚信息。 参考答案: Ttitle、Btitle 二、选择题 1.在SQL*Plus中连接数据库时,可以使用CONNECT命令。 下面的4个选项中,哪个命令是正确的? 其中,用户名为scott,密码为tiger,数据库名为orcl。 () A.CONNECTscott/tiger; B.CONNECTtiger/scott; C.CONNscott/tigerassysdba; D.CONNscott/tiger@orclassysdba; 参考答案: D 2.执行语句SAVEscott_emp_query。 sqlAPPEND,执行结果表示(). A.如果scottemp_query。 sql文件不存在,则出现错误 B.如果scottemp_query。 sql文件已经存在,则出现错误 C.将缓冲区中的内容追加到scott_emp_query.sql文件中。 如果该文件不存在,会创建该文件 D.将缓冲区中的內容替换掉scott_emp_query.sql文件的内容.如果该文件不存在,会创建该文件 参考答案: C 3.使用SQL*Plus中的___________,可以将文件中的内容检索到缓冲区,并且不执行。 () A.SAVE命令 B.GET命令 C.START命令 D.SPOOL命令 参考答案: B 4.下面是有关变量的描述,请问哪些描述是正确的? () A.临时变量是指仅在某个SQL语句中有效的变量 B.临时变量是在某个会话期间有效的变量 C.已定义变量是指明确定义,其生命期至显式地删除、重新定义或退出SQL*Plus为止 D.已定义的变量是不能被删除的 参考答案: B、C 5.如果希望控制列的显式格式,那么可以使用下面的___________命令() A.SHOW B.DEFINE C.SPOOL D.COLUMN 参考答案: D 三、简答题 1.使用DESCRIBE命令,查看scott用户的dept表的结构信息。 参考答案: descscott。 dept 2.使用SAVE命令将缓冲区内容写入到e: \test。 sql文件中;然后使用START命令将文件中的內容读入到缓冲区,并且进行执行。 参考答案: savee: \test.sql Starte: \test。 sql 3.执行下列语句,观察输出结果: DEFINEtemp=5000 SELECTempno,ename,mgr FROMscott.emp WHEREsal>=&temp; 参考答案: 略 4.对scott用户的emp表的输出信息进行格式设置。 其中,empno列设置标题为“员工编号”,NUMBER格式为9999;ename列设置标题为“员工名称”,格式设置为25个字符;hiredate列设置标题为“受雇日期”,并且标题居中显示。 参考答案: colempnoheading‘员工编号’format9999; colenameheading‘员工名称’forA25; colhiredateheading’受雇日期’justifycenter; 5.设置一页显示30行数据,并且设置一行显示130个字符,然后输出scott用户的emp表的全部信息。 参考答案: SETPAGESIZE30 SETLINESIZE130 SELECT*FROMSCOTT。 EMP 四、操作练习 下载SQLDeveloper,建立Oracle数据库的连接,按照书中所述步骤,操作熟悉SQLDeveloper的使用. 4。 5习题 一、填空题 1.如果需要在SELECT子句中包括一个表的所有列,可以使用符号___________。 参考答案: * 2.WHERE子句可以接收FROM子句输出的数据;而HAVING子句可以接收来自FROM、___________或___________子句的输出的数据。 参考答案: WHERE、GROUP 3.在SELECT语句中,分组条件的子句是___________,对显示的数据进行排序的子句是___________。 参考答案: GROUPBY、ORDERBY 4.在DML语句中,INSERT语句可以实现插入记录,___________语句可以实现更新记录,___________语句和___________语句可以实现删除记录。 参考答案: UPDATE、DELETE、TURNCATE 5.___________函数可以返回某个数值的ASCII值,___________函数可以返回某个ASCII值对应的十进制数。 参考答案: ASCII、CHR 6.使用___________函数,可以把数字或日期类型的数据转换成字符串;使用TO_DATE函数,可以把___________转换成___________,默认的日期格式为___________. 参考答案: TO_CHAR、字符串、日期型、yyyy—MM-ddHH: mm: ss 二、选择题 1.查询scott用户的emp表中的总记录数,可以使用下列哪个语句? () A.SELECTMAX(empno)FROMscott.emp; B.SELECTCOUNT(empno)FROMscott。 emp; C.SELECTCOUNT(comm)FROMscott.emp; D.SELECTCOUNT(*)FROMscott。 emp; 参考答案: D 2.为了去除结果集中的重复行,可以在SELECT中使用下列哪个关键字? () A.ALLB.DISTINCTC.UPDATAD.MERGE 参考答案: B 3.在SELECT语句中,HAVING子句的作用是() A.查询结果的分组条件B.组的筛选条件 C.限定返回的行的判断条件D.对结果集进行排序 参考答案: B 4.下列哪个聚合函数可以把一个列中的所有值相加求和? () A.MAX函数B.MIN函数C.COUNT函数D.SUM函数 参考答案: A 5.如果要统计表中有多少行记录,应该使用下列哪个聚合函数? () A.SUM函数B.AVG函数C.COUNT函数D.MAX函数 参考答案: C 三、简答题 1.标准SQL语言的语句类型可以分为哪三大类,每种语句类型分别用来操纵哪些语句? 参考答案: 数据操纵语言(DML): 用来操纵数据库中数据的命令。 包括: select、insert、update、delete。 数据定义语言(DDL): 用来建立数据库、数据库对象和定义列的命令。 包括: create、alter、drop。 数据控制语言(DCL): 用来控制数据库组件的存取许可、权限等的命令。 包括: grant、deny、revoke. 2.列举几个在WHERE条件中可以使用的操作符。 参考答案: 使用=、〉、〉=、<、<=、〈>符号和BETWEEN。 。 。 AND。 。 。 、IN(set)、LIKE、ISNULL。 3.如果要按照降序对数据进行排序,应该在ORDERBY子句中使用哪个关键字? 参考答案: DESC 4.下面这个SELECT语句能否输出查询结果? 如果不能,该如何修改? SELECTempno,ename,deptno,COUNT(*) FROMscott.emp GROUPBYdeptno 参考答案: 不能。 SELECTdeptno,COUNT(*) FROMscott.emp GROUPBYdeptno 5.指定一个日期值,例如08—8月—2008,获得这个日期与系统当前日期之间相隔的月份数和天数. 参考答案: selectmonths_between('08-8月-2008',sysdate)mon_betwfromdual; 5.8习题 一、填空题 1.按照约束的用途,主要可以将表的完整性约束分为NOTNULL约束、___________、___________、___________和___________。 参考答案: Check、UniqueIndex、Primarykey、Foreignkey 2.使用___________关键字,可以快速删除表中的所有记录,并且不在撤消表空间中记录撤消数据. 参考答案: TRUNCATE 3.___________约束用于定义列中不能出现NULL值,___________约束用于定义列中不能出现重复值,而PRIMARYKEY约束则可以定义列中既不允许出现NULL值,也不允许出现重复值. 参考答案: NOTNULL、UNIQUE 二、选择题 1.存储数据123。 45,可以使用下面哪种数据类型? () A.NUMBERB.NUMBER(5)C.NUMBER(5,3) D.NUMBER(5,2) 参考答案: D 2.如果某列定义了UNIQUE约束,则() A.该列不允许出现重复值。 B.该列不允许出现NULL值。 C.该列內允许出现一个NULL值.D.该列允许出现多个NULL值。 参考答案: A 3.为列定义一个CHECK约束,希望该约束能对表中已存储的数据,以及以后向表中添加或修改的数据都进行检查,则应该将该约束设置为如下哪种状态? ( ) A.ENABLEVALIDATEB.ENABLENOVALIDATE C.DISABLEVALIDATED.DISABLENOVALIDATE 参考答案: A 4.使用如下语句创建一个临时表空间temp: CREAT_________TABLESPACEtemp _________‘F: \oraclefole\temp。 dbf’ SIZE10M AUTOEXTENTON NEXT2M MAXSIZE20M; 请从下列选项中选择正确的关键字补充上面的语句。 () A.(不填)、DATAFILEB.TEMP、TEMPFILE C.TEMPORARY、TEMPFILED.TEMP、DATAFILE 参考答案: C 5.下列关于约束与索引的说法中哪一项是不正确的? () A.在字段上定义PRIMARYKEY约束时会自动创建B树惟一索引 B.在字段上定义UNIQUE约束时会自动创建B树惟一索引 C.在默认的情况下,禁用约束会删除对应的索引,而激活约束会自动重建相应的 索引 D.在定义FOREIGNKEY约束时会创建B树唯一索引 参考答案: D 三、简答题 1.比较VARCHAR2与CHAR两种数据类型的区别,并举例说明分别在什么情况下使用这两种数据类型。 参考答案: CHAR的长度是固定的,VARCHAR2的长度是可以变化的,存储字符串“ABC”,对于CHAR(10),表示存储的字符将占10个字节(包括7个空字符),而同样的VARCHAR2(10)则只占用3个字节的长度,10只是最大值,当你存储的字符小于10时,按实际长度存储。 VARCHAR2比CHAR节省空间,在效率上比CHAR会稍微差一些。 2.创建一个表后,为表中的某列添加CHECK约束,并分别设置该约束的状态为4种不同的状态,比较这4种状态下的约束检查效果。 参考答案: 略 3.建立一个学生表,表结构如下stu_info(stuidnumber,namevarchar(20),agenumber (2),sexchar (2),birthdaydate) (1)在数据库中建立stu_info表。 (2)添加主键约束(stuid) (3)添加 check约束(插入的年龄必须大于19岁) (4)添加 非空约束 (要求姓名不能为空值) (5)给上面的表添加 唯一约束(要求姓名不可重复) 参考答案: (1)createtablestu_info( stuidnumber, namevarchar(20), agenumber (2), sexchar (2), birthdaydate); (2)ALTERTABLEstu_info ADDCONSTRAINTstu_info_pkPRIMARYKEY(stuid); (3)ALTERTABLEstu_info ADDCONSTRAINTage_checkcheck(age〉19); (4)altertablestu_infomodifynamenotnull; (5)ALTERTABLEstu_info ADDCONSTRAINTname_uniunique(name); 6。 8习题 一、填空题 1.为了保证在SQL〉方式下进行INSERT、DELETE和UPDATE操作达到安全的目的,一般在SQL〉下进行操作前,建议将环境设置成为非自动提交的方式,采用的命令是_______,若想取消操作,采取的命令是_______. 参考答案: setautocommitoff、rollback 2.对某步操作设置相应保存点的命令是_______,当根据需要用命令_______来实现撤消到这一步。 参考答案: SAVEPOINT、ROLLBACKTO 3.关系数据库中比较常用的SQL中,采用命令_______进行插入,采用_______来进行数据更新,而同时具有更新和插入功能的命令式_______. 参考答案: INSERT、UPDATA、MERGE 二、选择题 1.PL/SQL块中不能直接使用的SQL命令是(). A.SELECTB.INSERTC.UPDATED.DROP 参考答案: D 2.以零作除数时会引发()异常. A.VALUE_ERRORB.ZERO_DIVIDE C.STORAGE_ERRORD.SELF_IS_NULL 参考答案: B 3.要更新游标结果集中的当前行,应使用()子句。 A.WHERECURRENTOFB.FORUPDATE C.FORDELETED.FORMODIFY 参考答案: A 4.下面不是常用的数据对象权限的是() A.DELETEB.REVOKEC.INSERTD.UPDATE 参考答案: B 5.用于修改表中数据的语句是() A.EDITB.MODIFYC.UPDATED.ALTER 参考答案: D 6.在只读表空间上可以执行以下哪些操作? () A.CREATETABLEB.ALTERTABLE C.DROPTABLED.INSERT 参考答案: C 三、简答题 1.简述DETELE操作与TRUNCATE操作的异同. 参考答案: truncate,可以删除表中的所有记录,释放表空间,只保留表结构。 delete,如果没有where条件,也是删除表中的所有记录,但是它不释放空间。 TRUNCATE在各种表上无论是大的还是小的都非常快。 如果有ROLLBACK命令DELETE将被撤销,而TRUNCATE则不会被撤销。 RUNCATE将重新设置高水平线和所有的索引.在对整个表和索引进行完全浏览时,经过TRUNCATE操作后的表比DELETE操作后的表要快得多。 2.已有表文件teacher(教师代码(C),姓名(C),学院(C),职称(C),年龄(N)), 按照要求写出SQL语句。 1.查询职称为”副教授"的教师代码,姓名,学院,职称信息; 2.查询学院为“电信学院”并且职称为“讲师”的所有教师的信息,并将查询结果按年龄字段的降序排序. 3.将所有教师的年龄加1; 4.将表中年龄小于15岁的教师记录加上删除标记; 参考答案: (1)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Oracle 数据库 管理 习题 答案
![提示](https://static.bdocx.com/images/bang_tan.gif)