oracle11g数据库管理与开发第5章答案
《数据库技术与应用》第5章 习题答案

第5章数据库完整性与安全性1. 什么是数据库的完整性?什么是数据库的安全性?两者之间有什么区别和联系?解:数据库的完整性是指数据库中数据的正确性、有效性和相容性,其目的是防止不符合语义、不正确的数据进入数据库,从而来保证数据库系统能够真实的反映客观现实世界。
数据库安全性是指保护数据库,防止因用户非法使用数据库造成数据泄露、更改或破坏。
数据的完整性和安全性是两个不同的概念,但是有一定的联系:前者是为了防止数据库中存在不符合语义的数据,防止错误信息的输入和输出,即所谓垃圾进垃圾出所造成的无效操作和错误结果。
后者是保护数据库防止恶意的破坏和非法的存取。
也就是说,安全性措施的防范对象是非法用户和非法操作,完整性措施的防范对象是不合语义的数据.2。
什么是数据库的完整性约束条件?完整性约束条件可以分为哪几类?解:完整性约束条件是指数据库中的数据应该满足的语义约束条件。
一般可以分为六类:静态列级约束、静态元组约束、静态关系约束、动态列级约束、动态元组约束、动态关系约束.静态列级约束是对一个列的取值域的说明,包括以下几个方面:①数据类型的约束,包括数据的类型、长度、单位、精度等;②对数据格式的约束;③对取值范围或取值集合的约束;④对空值的约束;⑤其他约束.静态元组约束就是规定组成一个元组的各个列之间的约束关系,静态元组约束只局限在单个元组上。
静态关系约束是在一个关系的各个元组之间或者若干关系之间常常存在各种联系或约束。
常见的静态关系约束有:①实体完整性约束;②参照完整性约束;③函数依赖约束.动态列级约束是修改列定义或列值时应满足的约束条件,包括下面两方面:①修改列定义时的约束;②修改列值时的约束。
动态元组约束是指修改某个元组的值时需要参照其旧值,并且新旧值之间需要满足某种约束条件.动态关系约束是加在关系变化前后状态上的限制条件,例如事务一致性、原子性等约束条件。
3. 试述DBMS如何实现完整性控制.解:为了维护数据库的完整性,DBMS提供了以下三种机制:①完整性约束条件定义完整性约束条件也称为完整性规则,是数据库中的数据必须满足的语义约束条件.SQL标准使用了一系列概念来描述完整性,包括关系模型的实体完整性、参照完整性和用户定义完整性。
数据库系统原理课后答案 第五章

5.1 名词解释(1)SQL模式:SQL模式是表和授权的静态定义。
一个SQL模式定义为基本表的集合。
一个由模式名和模式拥有者的用户名或账号来确定,并包含模式中每一个元素(基本表、视图、索引等)的定义。
(2)SQL数据库:SQL(Structured Query Language),即‘结构式查询语言’,采用英语单词表示和结构式的语法规则。
一个SQL数据库是表的汇集,它用一个或多个SQL模式定义。
(3)基本表:在SQL中,把传统的关系模型中的关系模式称为基本表(Base Table)。
基本表是实际存储在数据库中的表,对应一个关系。
(4)存储文件:在SQL中,把传统的关系模型中的存储模式称为存储文件(Stored File)。
每个存储文件与外部存储器上一个物理文件对应。
(5)视图:在SQL中,把传统的关系模型中的子模式称为视图(View),视图是从若干基本表和(或)其他视图构造出来的表。
(6)行:在SQL中,把传统的关系模型中的元组称为行(row)。
(7)列:在SQL中,把传统的关系模型中的属性称为列(coloumn)。
(8)实表:基本表被称为“实表”,它是实际存放在数据库中的表。
(9)虚表:视图被称为“虚表”,创建一个视图时,只把视图的定义存储在数据词典中,而不存储视图所对应的数据。
(10)相关子查询:在嵌套查询中出现的符合以下特征的子查询:子查询中查询条件依赖于外层查询中的某个值,所以子查询的处理不只一次,要反复求值,以供外层查询使用。
(11)联接查询:查询时先对表进行笛卡尔积操作,然后再做等值联接、选择、投影等操作。
联接查询的效率比嵌套查询低。
(12)交互式SQL:在终端交互方式下使用的SQL语言称为交互式SQL。
(13)嵌入式SQL:嵌入在高级语言的程序中使用的SQL语言称为嵌入式SQL。
(14)共享变量:SQL和宿主语言的接口。
共享变量有宿主语言程序定义,再用SQL 的DECLARE语句说明, SQL语句就可引用这些变量传递数据库信息。
ORACLE11g试题答案

. .. .目录第一章Oracle 11g 介绍 (2)第二章ORACLE 11g 的体系结构 (4)第三章ORACLE 11g 的数据库管理 (8)第四章ORACLE 11g 的表空间管理 (10)第五章ORACLE 11g 的表管理 (13)第六章ORACLE 11g 的数据查询 (18)第七章ORACLE 数据的基本操作 (23)第八章索引 (28)第九章视图 (33)第十章PL/SQL基础 (37)第十一章存储过程与函数 (43)第十二章触发器 (48)第十三章游标 (51)第十四章安全管理 (54)第十五章数据库备份与恢复 (57). .资料. ..第一章Oracle 11g 介绍一、选择题1.在数据库系统中,将满足以下两个条件的基本层次联系集合称为层次模型:( B )。
①有一个结点无双亲②其它结点无双亲③有且仅有一个结点无双亲④其它结点有且仅有一个双亲⑤允许其它结点有多个双亲A.①和②B.③和④C.③和⑤D.②和⑤2.下列有关数据库的描述,正确的是( C )A.数据库是一个DBF文件B.数据库是一个关系C.数据库是一个结构化的数据集合D.数据库是一组文件3.根据关系数据基于的数据模型——关系模型的特征判断下列正确的一项:( B )A.只存在一对多的实体关系,以图形方式来表示。
B.以二维表格结构来保存数据,在关系表中不允许有重复行存在。
C.能体现一对多、多对多的关系,但不能体现一对一的关系。
D.关系模型数据库是数据库发展的最初阶段。
4.Oracle 11g 是基于( A )的A.关系型B.文件系统C.层次型D.网络型5. 用二维表结构表达实体集的模型是(D )A.概念模型B.层次模型C.网状模型D.关系模型6.下列四项中说法不正确的是(C )A.数据库减少了数据冗余B.数据库中的数据可以共享C.数据库避免了一切数据的重复D.数据库具有较高的数据独立性7.下列四项中,不属于关系数据库特点的是(D)A.数据冗余小B.数据独立性高C.数据共享性好D.多用户访问下面系统中不属于关系数据库管理系统的是(C )A. OracleB. MS SQL ServerC. IMSD. DB29.MS SQL Server是(D )A. 数据库B. 数据库系统C. 数据处理系统D. 数据库管理系统二、填空题1.在数据库系统中管理数据的软件称为___数据库管理系统________。
Oracle11g数据库管理与开发基础教程课后习题及答案

Oracle11g数据库管理与开发基础教程课后习题及答案第⼀章选择题1、Oracle数据库服务器包含的两个主要组件是(AB)A、Oracle实例B、oracle数据库C、内存结构D、后台进程2、create database 创建Oracle数据库时创建的⽂件包括(AC)A、数据⽂件B、控制⽂件C、⽇志⽂件D、初始化参数⽂件3、创建Oracle数据库时,createdatabase语句中指出了需要创建的数据⽂件、⽇志⽂件存储路径和名称,但没有指出需要创建的控制⽂件,因此创建数据库之前需要创建(D)个控制⽂件。
A、0B、1C、2D、任意数量4、调⽤shutdown命令关闭Oracle数据库后,以下(D)命令关闭的数据库处于不⼀致状态。
A、shutdown normalB、shutdown transactionalC、shutdown immediateD、shutdown abort5、作为普通⽤户,只有当数据库处于以下(C)状态下才可连接访问。
A、NUMOUNTB、MOUNTC、OPEND、CLOSE填空题1、SGA可分为以下⼏种主要区域:(SGA固定)、(数据库缓冲区缓存)、(重做⽇志缓冲区)、(共享池)等。
2、Oracle实例有多种后台进程,其中每个数据库实例上必须启动的后台进程包括(数据库写⼊进程)、(⽇志写⼊进程)、(检查点进程)、(进程监视进程)、(系统监视进程)等。
3、Oracle数据库的逻辑存储结构是(表空间)、(段)、(区)、(数据块)等。
4、Oracle数据库逻辑上的表空间结构与磁盘上的物理(数据)⽂件相关联。
5、下⾯连接字符串采⽤的是(简易连接)命名⽅式。
CONNECT Scott/tiger@dbs:1525@/doc/727db4ff03768e9951e79b89680203d8ce2f6aac.html编程题1.写出以下操作的SQL*PLUS命令语句:先启动Oracle实例到“已启动实例状态”,再修改Oracle实例到“数据库已装载状态”,最后修改Oracle实例到打开状态。
oracle11g数据库管理与开发第5章答案.

第5章重做日志管理一、选择题1.Oracle数据库重做日志由(B)后台进程写入联机重做日志文件。
A.DBWRB.LGWRC.ARCnD.SMON2.重做日志缓冲区中的重做日志在(A、B)会被写入重做日志文件。
A.事务提交时B.重做日志缓冲区达到三分之一满,或者日志缓冲区内的日志量超过1MB时C.每3秒过后D.检查点发生时3.改变Oracle数据库归档模式时,需要把数据库启动到(B)状态。
A.NOMOUNTB.MOUNTC.OPEND.CLOSE二、简答题请简述Oracle数据库重做日志从产生到归档的过程。
答:从创建数据库时,重做日志文件产生,用户在执行数据库操作时,服务器进程把重做记录从用户内存空间拷贝到SGA,它们首先被缓存在SGA的重做日志缓冲区内,之后由ORACLE数据库的后台进程写入进程把他们写入联机重做日志文件中,一个数据库至少有两个重做日志文件,一组当前处于写入状态,另一组重做日志用于归档操作。
在oracle数据库运行在归档模式时,发三个部分日志切换后,归档进程(ARCn,n为归档进程号,它可以是0-9,a-t,oracle中可以启动多达30个归档进程)将把填充过的联机重做日志文件复制到指定的一个或者多个位置存储,为他们创建脱机副本,归档完成。
三、实训题1.练习把Oracle数据库从非归档模式修改为归档模式,之后创造条件让数据库立即归档,并检查归档是否成功。
(1)查看数据库的归档模式archive log list;(2)关闭数据库shutdown normal/immedtate;(3)吧数据库重新启动到mount状态startup mount;(4)把数据库修改为自动归档模式alter database archivelog;(5)打开数据库,供用户访问alter database open;(6)查看数据库的归档模式archive log list(7)让数据库立即自动归档archive system switch logfile(8)查看数据库是否归档archive log list;2.查看数据库当前重做日志文件组及成员的设置情况,之后为Oracle数据库添加一组重做日志。
oracle应用开发答案

oracle应用开发答案【篇一:oracle10g数据库管理应用与开发课后答案】填空与选择题)填空题第二章1.oracle数据库系统的物理存储结构主要由3类文件组成,分别为数据文件、日志文件、控制文件。
2.到日志文件。
3.一个表空间物理上对应一个或多个4.在oracle的逻辑存储结构中,根据存储数据的类型,可以将段分为数据段、索引段、回退段、lob段和临时段。
5.在oracle的逻辑存储结构中,i/o单元。
6.在多进程oracle实例系统中,进程分为后台进程和当一个用户运行应用程序,如pro*c程序或一个oracle工具(如sql*plus),系统将为用户运行的应用程序建立一个用户进程。
第三章1.标准的sql、数据操纵语句(dml)和2.在需要滤除查询结果中重复的行时,必须使用关键字关键字all。
3.如果需要在select子句中包括一个表的所有列,可使用符号4.如果定义与组有关的搜索条件,可以把子句添加到select语句中。
5.当进行模糊查询时,就使用关键字_或百分号%。
6.where子句可以接收from子句输出的数据,而having子句则可以接收来自、from或子句的输入。
7.使下列sql语句中添加适当的表达式或子句,使语句可以正常运行。
select 供应商所在城市,count(供应商编号)from 供应商信息group by order by desc;第四章1.在sql语句中,用于向表中插入数据的语句是。
2.如果需要向表中插入一批已经存在的数据,可以在insert语句中使用语句。
3.创建一个update语句来修改artists表中的数据,并且把每一行的t_id值都改成15,应该使用的sql语句是update artists sett_id=15;。
4.使用命令可以显示表的结构信息。
5.使用sql*plus的6.当设置了多个列的显示属性后,如果清除设置的显示属性,可以使用命令,而当要清除某列具体的显示属性时,需要使用命令off/column 列名 clear。
最新Oracle11g数据库基础教程课后习题答案

Oracle11g数据库基础教程参考答案第5章数据库存储设置与管理P70.实训题(8)为USERS表空间添加一个数据文件,文件名为USERS05.DBF,大小为5 0MB。
ALTER TABLESPACE USERS ADD DATAFILE‘D:\ORACLE\ORADATA\ORCL\%users05.dbf’ SIZE 50M;(9)为EXAMPLE表空间添加一个数据文件,文件名为example05.dbf,大小为20MB。
ALTER TABLESPACE EXAMPLEADD DATAFILE ‘D:\ORACLE\ORADATA\ORCL\example05.dbf’ SIZE 20M;(10)修改USERS表空间中的userdata05.dbf为自动扩展方式,每次扩展5MB,最大为100MB。
ALTER DATABASE DATAFILE‘D:\ORACLE\ORADATA\ORCL\%userdata05.dbf’ AUTOEXTEND ON NEXT 5M MAXSIZE 100M;(14)为数据库添加一个重做日志文件组,组内包含两个成员文件,分别为redo5a.log和redo5b.log,大小分别为5MB。
ALTER DATABASE ADD LOGFILE GROUP 5(‘D:\ORACLE\ORADATA\ORCL\redo5a.log’,‘D:\ORACLE\ORADATA\ORCL\redo5b.log’)SIZE 5M;(15)为新建的重做日志文件组添加一个成员文件,名称为redo5c.log。
ALTER DATABASE ADD LOGFILE MEMBER‘D:\ORACLE\ORADATA\ORCL\redo5c.log’ TO GROUP 5;(16)将数据库设置为归档模式,并采用自动归档方式。
SHUTDOWN IMMEDIATE STARTUP MOUNTALTER DATABASE ARCHIVELOG;ALTER DATABASE OPEN;ALTER SYSTEM ARCHIVE LOG START(8)ALTER TABLESPACE USERSADD DATAFILE ‘D:\ORACLE\ORADATA\ORCL\userdata05.dbf’ SIZE 50M’;(9)ALTER TABLESPACE EXAMPLEADD DATAFILE ‘D:\ORACLE\ORADATA\ORCL\example05.dbf’ SIZE 20M’;(10)ALTER DATABASE DATAFILE ‘D:\ORACLE\ORADATA\ORCL\userdata05.dbf’ AUTOEXTEND ON NEXT 5M MAXSIZE 100M;(14)ALTER DATABASE ADD LOGFILE GROUP 5(‘D:\ORACLE\ORADATA\ORCL\redo05a.log’,’D:\ORACLE\ORADATA\ORCL\redo05b.log’)SIZE 5M;(15)ALTER DATABASE ADD LOGFILE MEMBER‘D:\ORACLE\ORADATA\ORCL\redo05c.log’ TO GROUP 5;(16)SHUTDOWN IMMEDIATESTARTUP MOUNTALTER DATABASE ARCHIVELOG;ALTER DATABASE OPEN;ALTER SYSTEM ARCHIVE LOG START第6章数据库对象的创建与管理2.实训题(2)Create table exer_class(CNO number(2) primary key,CNAME varchar2(20),NUM number(3))Create table exer_student(SNO number(4) primary key,SNAME varchar2(10) unique,SAGE number,SEX char(2),CNO number(2))(3)Alter table exer_student add constraint ck_sage check (sage>0 and sage<=100);(4)alter table exer_student add constraint ck_stu check(sex='M' or sex='F')modify sex default 'M'(5)Create unique index ind_cname on exer_class(cname);(6)Create view s_c asSelect sno,sname,sage,sex,o,cname,numFrom exer_class c join exer_student sOn o=o;(7)Create sequence sequ1 start with 100000001;(8)create table exer_student_range(sno number(4) primary key,sname varchar2(10),sage number,sex char(2),cno number(2))partition by range(sage)(partition part1 values less than(20) tablespace example,partition part2 values less than(30) tablespace orcltbs1,partition part3 values less than(maxvalue) tablespace orcltbs2)(9)create table exer_student_list(sno number(4) primary key,sname varchar2(10),sage number,sex char(2),cno number(2))partition by list(sex)(partition man values('M') tablespace orcltbs1,partition woman values('F') tablespace orcltbs2)(10)Create index ind on exer_student_range(sno) local;第9章PL/SQL语言基础1.实训题(1)declarecursor c_emp is select * from employees;beginfor v_emp in c_emp loopdbms_output.put_line(v_emp.first_name||' '||v_st_name||' '|| v_emp.employee_id||' '||v_emp.salary||' '||v_emp.department_id); end loop;end;(2)declarev_avgsal employees.salary%type;beginfor v_emp in (select * from employees) loopselect avg(salary) into v_avgsal from employeeswhere department_id=v_emp.department_id;if v_emp.salary>v_avgsal thendbms_output.put_line(v_emp.first_name||' '||v_st_name||' '|| v_emp.employee_id||' '||v_emp.salary||' '||v_emp.department_id);end if;end loop;end;(3)declarecursor c_emp isselect e.employee_id eid,st_name ename,e.department_id edid,m.employee_id mid,st_name mnamefrom employees e join employees mon e.manager_id=m.employee_id;v_emp c_emp%rowtype;beginopen c_emp;loopfetch c_emp into v_emp;exit when c_emp%notfound;dbms_output.put_line(v_emp.eid||' '||v_emp.ename||' '||v_emp.edid||' '||v_emp.mid||' '||v_emp.mname);end loop;close c_emp;end;(4)declarev_emp employees%rowtype;beginselect * into v_emp from employees where last_name='Smith';dbms_output.put_line(v_emp.employee_id||' '||v_emp.first_name||' '||v_st_name||' '||v_emp.salary||' '||v_emp.department_id); exceptionwhen no_data_found theninsert into employees(employee_id,last_name,salary,email,hire_date, job_id,department_id)values(2010,'Smith',7500,'*****************.cn',to_date('2000-10-5','yyyy-mm-dd'),'AD_VP',50);when too_many_rows thenfor v_emp in(select * from employees where last_name='Smith')loopdbms_output.put_line(v_emp.employee_id||' '||v_emp.first_name||' '||v_st_name||' '||v_emp.salary||' '||v_emp.department_id);end loop;end;第10章PL/SQL程序设计(1)创建一个存储过程,以员工号为参数,输出该员工的工资。
ORACLE第5-7章 习题参考答案

第5章数据查询操作【填空题】1.WHERE,HAVING2.SUM3.%4.UNION,MINUS【选择题】1.C 2.A 3.D 4.A 5.A 6.B【简答题】1.什么是SQL注入式攻击?如何防范SQL注入式攻击?(1)SQL注入技术定义SQL注入(SQL Injection)技术在国外最早出现在1999年,我国在2002年后开始大量出现,目前没有对SQL注入技术的标准定义,微软中国技术中心从2个方面进行了描述:(1)脚本注入式的攻击(2)恶意用户输入用来影响被执行的SQL脚本Chris Anley将SQL注入定义为,攻击者通过在查询操作中插入一系列的SQL语句到应用程序中来操作数据。
Stephen Kost给出了SQL注入的一个特征,“从一个数据库获得未经授权的访问和直接检索”。
利用SQL注入技术来实施网络攻击常称为SQL注入攻击,其本质是利用Web 应用程序中所输入的SQL语句的语法处理,针对的是Web应用程序开发者编程过程中未对SQL 语句传入的参数做出严格的检查和处理所造成的。
习惯上将存在SQL注入点的程序或者网站称为SQL注入漏洞。
实际上,SQL注入是存在于有数据库连接的应用程序中的一种漏洞,攻击者通过在应用程序中预先定义好的查询语句结尾加上额外的SQL语句元素,欺骗数据库服务器执行非授权的查询。
这类应用程序一般是基于Web的应用程序,它允许用户输入查询条件,并将查询条件嵌入SQL请求语句中,发送到与该应用程序相关联的数据库服务器中去执行。
通过构造一些畸形的输入,攻击者能够操作这种请求语句去获取预先未知的结果。
(2)一般的SQL注入攻击防范方法SQL注入攻击防范方法目前已经有很多,总结起来有下面一些:●在服务端正式处理之前对提交数据的合法性进行检查;●封装客户端提交信息;●替换或删除敏感字符/字符串;●屏蔽出错信息。
●不要用字串连接建立SQL查询,而使用SQL变量,因为变量不是可以执行的脚本;●目录最小化权限设置,给静态网页目录和动态网页目录分别设置不同权限,尽量不给写目录权限;●修改或者去掉Web服务器上默认的一些危险命令,例如ftp、cmd、wscript等,需要时再复制到相应目录;数据敏感信息非常规加密,通过在程序中对口令等敏感信息加密都是采用md5函数进行加密,即密文=md5(明文),本文推荐在原来的加密的基础上增加一些非常规的方式,即在md5加密的基础上附带一些值,如密文=md5(md5(明文)+123456);2.请举例说明外连接的3种类型及其用法。
ORACLE复习题含答案

简答题(4*5’)1、简述Oracle数据库体系结构的构成。
答:数据库实例,物理存储结构和逻辑存储结构。
实例包括内存结构与后台进程;物理存储结构主要用于描述Oracle数据库外部数据的存储,即在操作系统中如何组织和管理数据,与具体的操作系统有关;逻辑存储结构主要描述Oracle数据库内部数据的组织和管理方式,与操作系统没有关系。
2、简述Oracle数据库逻辑存储结构的组成及相互关系。
答:Oracle数据库逻辑存储结构包括表空间、段、区、块四种。
其中,数据块是数据库中最小I/O单位,由若干连续的数据块组成的区是数据库中最小的存储分配单元,由若干区形成的段是相同类型的数据存储分配区域,由若干段形成的表空间是最大的逻辑存储单元,所有的表空间构成一个数据库。
3、简述Oracle数据库重做日志文件的作用。
答:重做日志文件,保存了用户对数据库所作的更新操作,包含的主要信息是记录事务的开始和结束、事务中每项操作的对象和类型、更新操作前后的数据值等。
4、简述索引作用并说明索引按不同分类依据分为哪些类。
答:创建索引的作用是为了提高对表中数据的查询效率。
根据索引值是否唯一,可分为唯一性索引和非唯一性索引;根据索引的组织结构不同,可分为平衡索引和位图索引;根据索引基于列数不同,可分为单列索引和复合索引。
5、简述Oracle的安全控制机制有哪些?答:1)、用户管理2)、权限管理3)、角色管理4)、表空间设置和配额5)、用户资源限制6)、数据库审计6、简述Oracle数据库角色的种类、作用以及如何利用角色为用户授权。
答:SYS:是数据库中具有最高权限的数据库管理员,可以启动、修改和关闭数据库,拥有数据字典;SYSTEM:是一个辅助的数据库管理员,不能启动和关闭数据库,但可以进行其他一些管理工作,如创建用户、删除用户等。
SCOTT:是一个用于测试网络连接的用户,其口令为TIGER。
PUBLIC:实质上是一个用户组,数据库中任何一个用户都属于该组成员。
《Oracle数据库应用与开发》教材课后习题参考答案

《Oracle数据库应用与开发》教材课后习题参考答案1.8习题:1.(1)关系型数据库管理系统,简称RDBMSo是在E.F.Codd博士发表的论文《大规模共享数据银行的关系型模型》基础上设计出来的。
它通过数据、关系和对数据的约束三者组成的数据模型来存放和管理数据。
RDBMS是SQL的基础,同样也是所有现代数据库系统的基础。
(2)在关系型数据库中,标准二维表是基本的数据存储单元,里边存储了实体的属性和实体间的关系。
2.关系型数据库中,表与表之间包括的三种关系是:一对一、一对多和多对多。
(1)一对一:有两个表,表A和表B。
表A中的一条记录在表B 中有一条记录与之对应。
反过来,表B中的一条记录在表A中也仅有一条记录与之对应。
(2)一对多:有两个表,表A和表B。
表A中的一条记录在表B 中有多条记录与之对应。
反过来,表B中的一条记录在表A中仅有一条记录与之对应。
(3)多对多:有两个表,表A和表B。
表A中的一条记录在表B 中有多条记录与之对应。
反过来,表B中的一条记录在表A中也有多条记录与之对应。
3.Oracle 10g提供了四个版本,分别是:Oracle 10g标准版1、Oracle 10g 标准版、Oracle 20g 企业版、Oracle 20g 个人版。
4.(1)客户机/服务器结构:简称C/S结构,是软件系统的一种体系结构。
数据库和数据库管理系统运行在服务器端,各种Oracle管理工具运行在客户机上,二者通过SQL*NET进行通信。
(2)浏览器/服务器结构:简称B/S结构,是随着Web技术兴起后的一种新型软件系统结构。
它通常分为三层:数据库服务器,用来存储和管理数据库;应用程序服务器,与数据库服务器进行交互完成各种数据处理工作; 客户端浏览器,与应用程序服务器进行交互,负责提交数据处理请求并获得和显示结果。
5.(1) SYS:该用户被默认创建并授予DBA角色,它是Oracle数据库中权限最大的管理员账号。
数据库第五章课后习题答案

数据库第五章课后习题答案关系规范化理论题⽬4.20 设关系模式R(ABC),F是R上成⽴的FD集,F={B→A,C→A },ρ={AB,BC }是R上的⼀个分解,那么分解ρ是否保持FD集F?并说明理由。
答:已知F={ B→A,C→A },⽽πAB(F)={ B→A },πBC(F)=φ,显然,分解ρ丢失了FD C→A。
4.21 设关系模式R(ABC),F是R上成⽴的FD集,F={B→C,C→A },那么分解ρ={AB,AC }相对于F,是否⽆损分解和保持FD?并说明理由。
答:①已知F={ B→C,C→A },⽽πAB(F)=φ,πAC(F)={ C→A }显然,这个分解丢失了FD B→C②⽤测试过程可以知道,ρ相对于F是损失分解。
4.22 设关系模式R(ABCD),F是R上成⽴的FD集,F={A→B,B→C,A→D,D→C },ρ={AB,AC,BD }是R的⼀个分解。
①相对于F,ρ是⽆损分解吗?为什么?②试求F在ρ的每个模式上的投影。
③ρ保持F吗?为什么?答:①⽤测试过程可以知道,ρ相对于F是损失分解。
②πAB(F)={ A→B },πAC(F)={ A→C },πBD(F)=φ。
③显然,分解ρ不保持FD集F,丢失了B→C、A→D和D→C等三个FD。
4.23设关系模式R(ABCD),R上的FD集F={A→C,D→C,BD→A},试说明ρ={AB,ACD,BCD }相对于F是损失分解的理由。
答:据已知的F集,不可能把初始表格修改为有⼀个全a⾏的表格,因此ρ相对于F是损失分解。
4.24 设关系模式R(ABCD)上FD集为F,并且F={A→B,B→C,D→B}。
① R分解成ρ={ACD,BD},试求F在ACD和BD上的投影。
② ACD和BD是BCNF吗?如不是,望分解成BCNF。
解:① F在模式ACD上的投影为{A→C,D→C},F在模式BD上的投影为{D→B}。
②由于模式ACD的关键码是AD,因此显然模式ACD不是BCNF。
Oracle11g数据库基础教程第2版习题答案作者张凤荔王瑛李晓黎等2..

第1章Oracle11g简介一、选择题1.D2.D3.C4.A5.D6.D7.B二、填空题1.视图2.索引3.簇4.DB_BLOCK_SIZE 5.SYSTEM6.数据文件7.日志文件8.控制文件9.系统全局区(System Global Area,SGA)10.程序全局区(Program Global Area,PGA)11.数据库管理员12.安全官员13.网络管理员14.应用程序开发员15.应用程序管理员16.数据库用户。
三、简答题1.答:数据库由若干个表空间组成,表空间由表、索引、视图等逻辑对象组成,表由段组成,段由区组成,区则由数据块组成。
2.答:物理结构由构成数据库的操作系统文件所决定。
每个Oracle数据库都由3种类型的文件组成:数据文件、日志文件和控制文件。
Oracle数据库有一个或多个物理的数据文件。
数据库的数据文件包含全部数据库数据。
逻辑数据物理地存储在数据文件中。
每个数据库有两个或多个日志文件组,日志文件组用于收集数据库日志。
日志的主要功能是记录对数据所作的修改,所以对数据库作的全部修改记录在日志中。
在出现故障时,如果不能将修改数据永久地写入数据文件,则可利用日志得到修改记录,从而保证已经发生的操作成果不会丢失。
每个Oracle数据库有一个控制文件,记录数据库的物理结构。
控制文件包含数据库名、数据库数据文件和日志文件的名字、位置和数据库建立日期等信息。
3.答:SGA是一组共享内存结构,其中包含一个Oracle数据库例程数据及控制信息。
如果有多个用户同时连接到同一个例程,则此例程的SGA数据由这些用户共享。
因此,SGA也称为共享全局区(Shared Global Area)。
SGA包含以下数据结构。
∙数据库缓冲区:SGA用来保存从数据文件中读取的数据块。
∙重做日志缓冲区:SGA中的循环缓冲区,用于记录数据库发生改变的信息。
∙共享池:用于保存用户程序。
∙Java池:为Java命令提供语法分析。
数据库原理及应用第5章课后习题答案

习题51、 理解并给出下列术语的定义:1)设R(U)是一个属性集U 上的关系模式,X 和Y 是U 的子集。
若对于R(U)的任意一个可能的关系r ,r 中不可能存在两个元组在X 上的属性值相等, 而在Y 上的属性值不等, 则称 X 函数确定Y 或 Y 函数依赖于X ,记作X →Y 。
2) 完全函数依赖在R(U)中,如果X →Y ,并且对于X 的任何一个真子集X ’,都有Y 不函数依赖于X ’ ,则称Y 对X 完全函数依赖,记作Y X F −→−3) 部分函数依赖若X →Y ,但Y 不完全函数依赖于X ,则称Y 对X 部分函数依赖,记作Y X p −→−4) 传递函数依赖在R(U)中,如果X →Y ,(Y ⊆X) , Y →X ,Y →Z , 则称Z 对X 传递函数依赖。
记为:Z X T−→−注: 如果Y →X , 即X ←→Y ,则Z 直接依赖于X 。
5)候选码设K 为R (U,F )的属性或属性组合。
若U K F →, 则K 称为R 的侯选码。
6)主码:若候选码多于一个,则选定其中的一个作为主码。
7)外码:关系模式 R 中属性或属性组X 并非 R 的码,但 X 是另一个关系模式的码,则称 X 是R 的外部码(Foreign key )也称外码8)如果一个关系模式R 的所有属性都是不可分的基本数据项,则R ∈1NF.9)若R ∈1NF ,且每一个非主属性完全函数依赖于码,则R ∈2NF 。
10)如果R(U,F )∈2NF ,并且所有非主属性都不传递依赖于主码,则R(U,F )∈3NF 。
11)关系模式R (U ,F )∈1NF ,若X →Y 且Y ⊆ X 时X 必含有码,则R (U ,F ) ∈BCNF 。
12)关系模式R<U ,F>∈1NF ,如果对于R 的每个非平凡多值依赖X →→Y (Y ⊆ X ),X 都含有码,则R ∈4NF 。
2、 关系规范化的操作异常有哪些?1) 数据冗余大2) 插入异常3) 删除异常4) 更新异常3、 第一范式、第二范式和第三范式关系的关系是什么?4、 已知关系模式R(A,B,C,D,E)及其上的函数依赖集合F={A->D,B->C,E-> A},该关系模式的候选码是什么?候选码为:(E,B)5、 已知学生表(学号,姓名,性别,年龄,系编号,系名称),存在的函数依赖集合是{学号->姓名,学号->性别,学号->年龄,学号->系编号,系编号->系名称},判断其满足第几范式。
Oracle11g课后答案孙凤栋

第一章1 简答题(1) Oracle 11g 数据库的企业版、标准版、个人版之间有什么区别?分别适用于什么环境?(2)常用的数据库类型有哪几种?有何区别?分别适用于什么类型的应用?(3)说明Oracle数据库的命名规则。
1. 命名只能使用英文字母,数字和下划线,除个别通用的要避免使用缩写,多个单词组成的中间以下划线分割;2. 除数据库名称长度为1-8个字符,其余为1-30个字符,Database link名称也不要超过30个字符;3. 避免使用Oracle的保留字如level、关键字如type;4. 名表之间相关列名尽量同名;5. 数据库的命名:网上数据库命名为“OLPS”+表示站点的2-4个字符,后台数据库命名为“BOPS”+表示站点的2-4个字符。
测试数据库命名为“OLPS|BOPS”+“TEST”,开发数据库命名为“OLPS|BOPS”+“TEST”,用模式(SCHEMA/USER)的不同来区分不同的站点。
6. INDEX命名:table_name+column_name+index_type(1 byte)+idx,各部分以下划线(_)分割。
多单词组成的column name,取前几个单词首字母,加末单词组成column_name。
7. SEQUENCE命名:seq_+table_name。
(4)说明Oracle数据库各个服务的作用。
第二章1.简答题(1)简述利用OEM可以进行哪些数据库管理操作。
在OEM(Oracle Enterprise Manager)中,可以对方案中的各种数据库对象进行管理,如添加表、修改表和删除表等。
(2).简述利用SQL Plus工具可以进行哪些数据库管理与开发操作(3).简述利用SQL Developer可以对数据库进行哪些类型的操作(4).简述利用网络配置助手ONCA可以进行哪些网络配置操作(5).简述利用网络管理工具ONM可以进行哪些网络管理操作。
第三章1 简答题(l)简述Oracle数据库体系结构的构成。
Oracleg数据库管理、应用与开发标准教程课后习题答案(全)包括章(精品).docx

第二章一、填空题1. Oracle 数据库系统的物理存储结构主要由3类文件组成,分别为数据文件、丨I 志文件、 控制文件。
(另外还包含一些参数文件)2. 用户对数据库的操作如果产生口志信息、则该LI 志信息首先被存储在LL 忐缓冲区中,随后 由LGWR 进程保存到口志文件。
3. 一个表空间物理上对应一个或多个数据文件。
4. 在Oracle 的逻辑存储结构屮,根据存储数据的类型,可以将段分为数据段、索引段、冋 退段、LOB 段和临时段。
5. 在Oracle 的逻辑存储结构屮,数据块是最小的1/0单元。
6. 在多进程Oracle 实例系统中,进程分为用户进程、示台进程和服务器进穆。
当一个用户 运行应用程序,如PRO*C 程序或一个Oracle T 具(如SQL*Plus ),系统将为用户运行的应 用程序建立一个用户进程。
二、选择题1•下列选项中,哪一部分不是Oracle 实例的组成部分? CA. 系统全局区SGAB. PMON 后台进程C.控制文件2. 在全局存储区SGA 屮,哪部分内存区域是循环使用的? BA. 数据缓冲区B. U 志缓冲区C.共享池3. 解析后的SQL 语句在SGA 的哪个区域屮进行缓存? CA. 数据缓冲区B. 口志缓冲区C.共享池4. 如果一个服务进程非正常终止,Oracle 系统将使用下列哪一个进程来释放它所占川的资 源? DA. DBWRB. LGWRC. SMOND. PMON 5. 如果服务器进稈无法在数据缓冲区屮找到空闲缓存块,以添加从数据文件屮读取的数据 块,则将启动如下哪一个进程? DA. CKPTB. SMONC. LGWRD. DBWR 6. 下列关于共享服务器模式的叙述哪一项不正确? AA. 在共享服务器操作模式下,毎一个用户进程必须对应一个服务器进程B. 一个数据库实例可以启动多个调度进程C. 在共享服务器操作模式下,Oracle 实例将启动调度进^.Dnnn 为用户进稈分配服务进稈D. 共享服务器操作模式可以实现少量服务器进程为大量用户进程提供服务7. 当数据库运行在归档模式下时,如果发生口志切换,为了保证不覆盖旧的I 」志信息,系统 将启动如下哪一个进程? DA. DBWRB. LGWRC. SMOND. ARCH 8. 下列哪一个进程和数据库部件可以保证用户对数据库所做的修改在没有保存的情况下,不 会发生丢失修改数据? CA. DBWR 和数据文件B. LGWR 和日志文件组C. CKPT 和控制文件D. ARCH 和归档丨I 志文件 D. Dnnn 调度进程 D.大池 D.大池9.下列哪一个进稈用于将修改过的数据从内存保存到磁盘数据文件屮? AA. DBWRB. LGWRC. RECOD. ARCH10.如果要查询数据库屮所有表的信息,应当使用下列哪种数据字典视图? A11.下列哪一项是Oracle数据库屮最小的存储分配单元? DA.表空间B.段C.盘区D.数据块12.下面的各项屮哪一个正确描述了Oracle数据库的逻辑存储结构? AA.表空间由段组成,段由盘区组成,盘区由数据块组成B段由表空间纟R成,表空间由盘区纟R成,盘区由数据块组成C.盘区由数据块组成,数据块由段组成,段由表空间组成D.数据块由段组成,段由盘区组成,盘区由表空间组成第三章一、填空题1.标准的SQL语言语句类型可以分为:数据定义语句(DDL)、数据操纵语句(DML)和数据控制语句(DCL)o2.在需要滤除杏询结果屮重复的行时,必须使用关键字Distinct;在需要返I叫杳询结果中的所有行时,可以使用关键字沁1。
Oracle11g数据库基础教程-参考答案

Oracle11g数据库基础教程参考答案第1章 Oracle 11g数据库安装与配置1.简答题(1)企业版数据库服务器包含所有的数据库组件,主要针对高端的应用环境,适用于安全性和性能要求较高的联机事务处理(OLTP)、查询密集型的数据仓库和要求较高的Internet应用程序:标准版数据库服务器提供大部分核心的数据库功能和特性,适合于工作组或部门级的应用程序:个人版数据库服务器只提供基本数据库管理功能和特性,适合单用户的开发环境,为用户提供开发测试平台。
(2)常用数据库类型包括事务处理类、数据仓库类以通用类型。
其中事务处理类型主要针对具有大量并发用户连接,并且用户主要执行简单事务处理的应用环境。
事务处理数据库的典型应用有银行系统数据库、Internet电子商务数据库、证券交易系统数据库等。
对于需要较高的可用性和事务处理性能、存在大量用户并行访问相同数据以及需要较高恢复性能的数据库环境,事务处理类型的配置可以提供最佳性能;数据仓库类型的数据库主要针对有大量的对某个主题进行复杂查询的应用环境。
数据仓库的典型应用有客户订单研究、支持呼叫、销售预测、采购模式以及其他战略性业务问题的历史数据研究。
对于需要对大量数据进行快速访问,以及复杂查询的数据库环境,数据仓库类型配置是最佳选择;通用类型配置的数据库是事务处理数据库与数据仓库配置的折衷方案。
既可以支持大量并发用户的事务处理,又可以快速对大量历史数据进行复杂的数据扫描和处理。
(3)数据库名可以由字母、数字、下划线(_)、#和美元符号($)组成,且必须以字母开头,长度不超过30个字符。
在单机环境中,可以不设置域名,域名长度不能超过128个字符。
Oracle服务标识符(SID)是一个Oracle实例的唯一名称标识,长度不能超过12个字符。
(4)OracleServiceORCL:数据库服务(数据库实例),是Oracle核心服务,是数据库启动的基础,只有该服务启动,Oracle数据库才能正常启动。
oracleg数据库管理应用开发标准教程课后答案

o r a c l e11g数据库管理应用开发标准教程部分课后答案思考与练习一、填空题1.日志文件2.日志缓冲区、LGWR、日志文件组。
3.数据文件4.数据段、回退段、临时段5.数据块6.用户进程、服务器进程、用户进程二、选择题1.(D)2.(B)3.(D)4.(B)5.(B)6.(C)7.(D)8.(A)9.(B)10.(B)11.(D)12.(C)13.(B)14.(D)思考与练习一、填空题1.AUTO、MANUAL、AUTO、MANUAL2.NLS_DATE_FORMAT3.初始化参数文件、服务器端初始化参数文件4.SHOWPARAMETER5.为实例加载数据库6.立即关闭、事务关闭。
7.静默、挂起二、选择题1.(B)2.(A)3.(D)4.(B)思考与练习一、填空题1.命令标题、命令中使用的强制参数和可选参数。
2.PROMPT3.SPOOL4.TITLE、BTITLE5.START、@6.COLUMN二、选择题1.C2.C3.D4.A思考与练习一、填空题1.*2.asc、desc3.HAVING4.LINK、下划线“_”5.GROUPBY、WHERE6.全外连接7.ASCII()、CHAR()8.子查询9.括号、ORDERBY10.常量11.IN、ANY、ALL12.SELECT13.UPDATEEMPSETSAL=SAL*二、选择题1.D2.B3.B5.A6.B7.A8.D11.C12.D13.D14.A15.D16.B思考与练习一、填空题1.异常处理2.打开游标、关闭游标3.NO_DATA_FOUND4.%ROWCOUNT。
5.N6.完成下列程序使其能够正确运行。
i<>j、i<>kANDj<>k二、选择题1.C2.B3.A4.B5.D6.A思考与练习一、填空题1.在下面程序的空白处填写适当的代码,使该函数可以获取指定编号的员工薪金。
returnnumber、intov_sal、p_id2.假设有一个程序包,其中包含了两个重载的函数MAX。
ORACLE11g试题答案(陈冬亮)

目录第一章 Oracle 11g 介绍 (2)第二章 ORACLE 11g 的体系结构 (4)第三章 ORACLE 11g 的数据库管理 (8)第四章 ORACLE 11g 的表空间管理 (10)第五章 ORACLE 11g 的表管理 (13)第六章 ORACLE 11g 的数据查询 (18)第七章 ORACLE 数据的基本操作 (23)第八章索引 (28)第九章视图 (33)第十章 PL/SQL基础 (37)第十一章存储过程与函数 (43)第十二章触发器 (48)第十三章游标 (51)第十四章安全管理 (54)第十五章数据库备份与恢复 (57)1第一章 Oracle 11g 介绍一、选择题1.在数据库系统中,将满足以下两个条件的基本层次联系集合称为层次模型:( B )。
①有一个结点无双亲②其它结点无双亲③有且仅有一个结点无双亲④其它结点有且仅有一个双亲⑤允许其它结点有多个双亲A.①和② B.③和④C.③和⑤ D.②和⑤2.下列有关数据库的描述,正确的是( C )A.数据库是一个DBF文件B.数据库是一个关系C.数据库是一个结构化的数据集合D.数据库是一组文件3.根据关系数据基于的数据模型——关系模型的特征判断下列正确的一项:( B )A.只存在一对多的实体关系,以图形方式来表示。
B.以二维表格结构来保存数据,在关系表中不允许有重复行存在。
C.能体现一对多、多对多的关系,但不能体现一对一的关系。
D.关系模型数据库是数据库发展的最初阶段。
4.Oracle 11g 是基于( A )的A.关系型B.文件系统C.层次型D.网络型5. 用二维表结构表达实体集的模型是( D )A.概念模型 B.层次模型C.网状模型 D.关系模型6.下列四项中说法不正确的是( C )A.数据库减少了数据冗余B.数据库中的数据可以共享C.数据库避免了一切数据的重复D.数据库具有较高的数据独立性7.下列四项中,不属于关系数据库特点的是( D )A.数据冗余小B.数据独立性高C.数据共享性好D.多用户访问下面系统中不属于关系数据库管理系统的是( C )A. OracleB. MS SQL ServerC. IMSD. DB29. MS SQL Server是( D )A. 数据库B. 数据库系统C. 数据处理系统D. 数据库管理系统二、填空题1.在数据库系统中管理数据的软件称为___数据库管理系统________。
数据库管理系统原理 第五章测验 测验答案 慕课答案 UOOC优课 课后练习 深圳大学

数据库管理系统原理第五章测验一、单选题(共40.00分)1. 哪种完整性将两个表中的相应元组联系起来,对其中一个表进行增删改操作时有可能破坏相应的完整性,必须进行检查。
()A. 过程完整性B. 实体完整性C. 参照完整性D. 用户定义完整性正确答案:D2. 完整性约束命名子句CONSTRAINT <完整性约束条件名><完整性约束条件> <完整性约束条件>包括NOT NULL、UNIQUE等,请从下列选项中选出不用于构造完整性约束条件的短语()。
A. CHECK短语B. PRIMARY KEY短语C. FOREIGN KEY短语D. ALTER短语正确答案:D3. 一个数据表上可能定义了多个触发器,执行下列语句,正确的执行顺序是()1、执行该表上的BEFORE触发器; 2、激活触发器的SQL语句; 3、执行该表上的AFTER触发器。
A. 1、2、3B. 2、1、3C. 2、3、1D. 3、1、2正确答案:A4. 下列关于定义触发器的语法说明错误的选项是()。
A. 表的拥有者才可以在表上创建触发器B. 触发器可以定义在基本表上,也可以定义在视图上C. 同一模式下,触发器名必须是唯一的,触发器名和表名必须在同一模式下D. 触发器只能定义在基本表上,不能定义在视图上正确答案:B二、多选题(共33.00分)1. 触发器类型()。
A. 行级触发器(FOR EACH ROW)B. 列级触发器(FOR EACH COLUMN)C. 语句级触发器(FOR EACH STATEMENT)D. 表级触发器(FOR EACH TABLE)正确答案:A C2. CREATE TABLE DEPT ( Deptno NUMERIC(2), Dname CHAR(9) UNIQUE NOT NULL)关于关键子句“ UNIQUE NOT NULL”描述正确的选项()。
A. 实体完整性B. 要求Dname列值唯一, 或者不能取空值C. 用户定义的完整性D. 要求Dname列值唯一, 并且不能取空值正确答案:C D3. 数据的安全性描述正确的选项()。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第5章重做日志管理
一、选择题
1. Oracle数据库重做日志由(B)后台进程写入联机重做日志文件。
A.DBWR
B.LGWR
C.ARCn
D.SMON
2. 重做日志缓冲区中的重做日志在(A、B)会被写入重做日志文件。
A.事务提交时
B. 重做日志缓冲区达到三分之一满,或者日志缓冲区内的日志量超过1MB时
C.每3秒过后
D.检查点发生时
3.改变Oracle数据库归档模式时,需要把数据库启动到(B)状态。
A.NOMOUNT
B. MOUNT
C. OPEN
D. CLOSE
二、简答题
请简述Oracle数据库重做日志从产生到归档的过程。
答:从创建数据库时,重做日志文件产生,用户在执行数据库操作时,服务器进程把重做记录从用户内存空间拷贝到SGA,它们首先被缓存在SGA的重做日志缓冲区内,之后由ORACLE数据库的后台进程写入进程把他们写入联机重做日志文件中,一个数据库至少有两个重做日志文件,一组当前处于写入状态,另一组重做日志用于归档操作。
在oracle数据库运行在归档模式时,发三个部分日志切换后,归档进程(ARCn,n为归档进程号,它可以是0-9,a-t,oracle中可以启动多达30个归档进程)将把填充过的联机重做日志文件复制到指定的一个或者多个位置存储,为他们创建脱机副本,归档完成。
三、实训题
1.练习把Oracle数据库从非归档模式修改为归档模式,之后创造条件让数据库立即归档,并检查归档是否成功。
(1)查看数据库的归档模式
archive log list;
(2)关闭数据库
shutdown normal/immedtate;
(3)吧数据库重新启动到mount状态
startup mount;
(4)把数据库修改为自动归档模式
alter database archivelog;
(5)打开数据库,供用户访问
alter database open;
(6)查看数据库的归档模式
archive log list
(7)让数据库立即自动归档
archive system switch logfile
(8)查看数据库是否归档
archive log list;
2.查看数据库当前重做日志文件组及成员的设置情况,之后为Oracle数据库添加一组
重做日志。
(1)查看数据库重做日志的信息
select group#,status,members from v$log;
(2)为数据库添加一组重做日志redo1a.log,大小为5MB。
alter database orcl add logfile group 6
('D:\oracle\oradata\orcl\redo01-1.log'')
size 5M
blocksize 512
reuse;
3.在上面操作的基础上,为刚添加的那组重做日志添加一个日志成员,实现重做日志的多路存储。
alter database orcl
add logfile member
'D:\oracle\oradata\orcl\redo01-2.log'
to group 6;。