数据库考试填空与简答题_第1页
数据库考试填空与简答题_第2页
数据库考试填空与简答题_第3页
数据库考试填空与简答题_第4页
数据库考试填空与简答题_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、对于选择题,大家都写完了,也就不公布答案了第一、二章二、填空题1数据库技术经历了人工管理阶段,文件管理阶段和数据库管理阶段三个发展阶段。2数据库系统中最常用的三种数据模型有层次模型,网状模型和关系模型。3关系模式的三类完整性约束条件分别是实体完整性规则,参照完整性规则和 用户定义的完整性规则。4E-R图的主要元素是实体型,属性,联系。5在E-R模型的主要术语中,属性的取值范围称为_域_。能够区别不同的实体且能唯一标识实体的最小属性集,称为实体集的实体键。6SQL server 2005是客户机/服务器体系结构的数据库管理系统。7在给数据库改名之前,必须设置数据库处于 单用户 状态。8为了实现安

2、全性,每个网络用户在访问 SQL server 数据库之前,都必须经过两个阶段的检验:身份验证 和权限验证 。9按照数据模型划分,SQL Server应当是关系型数据库管理系统。10在SQL Server 2005中,要访问某个数据库,除了需要有一个登录帐号外,还必须有一个该数据库的用户帐号。11数据库管理系统,简称DBMS,它是指帮助用户建立、使用和管理数据库的软件系统。12SQL Server 2005有两类数据库,系统数据库和用户数据库。其中为新的用户数据库提供模板的系统数据库是Model数据库。13在计算机系统中,一个以科学的方法组织、存储数据,并可高效地获取、维护数据的软件系统称为数

3、据库管理系统(DBMS)。14在早期的代表性的数据库管理系统中,IMS系统是基于层次数据模型的。15. 在数据结构模型中,用树形结构表示实体类型以及实体之间联系的是层次数据模型的主要特征。16. 数据库管理系统管理并且控制数据资源的使用。17. 数据库管理系统是位于用户和操作系统之间的一个数据管理软件 。三、简答题1P2试述数据库系统的组成?答:书上:由数据库、数据库管理系统、操作系统、编译系统、应用程序、计算机硬件和用户组成的复杂系统。2解释两种身份验证?老师:1)Windows验证模式。用户通过Windows的安全机制来验证用户身份即可登录SQL Server 2005服务器。 (2)混合

4、验证模式。使用户可以使用Windows身份验证或SQL Server身份验证与SQL Server 2005服务器连接,将区分用户账号是否可信。3人工管理阶段数据管理的特点:老师:(1)数据不保存在机器中 (2)无专用的软件对数据进行管理 (3)只有程序的概念,没有文件的概念 (4)数据面向程序4文件系统阶段数据管理的特点:老师:(1)数据可长期保存在外存的磁盘上 (2)数据的逻辑结构和物理结构有了区别 (3)文件组织已呈多样化。有索引、链接和散列文件 (4)数据不再属于某个特定的程序,可重复使用。5文件系统显露出三个缺陷:老师:(1)数据冗余性 (2)数据不一致性 (3)数据联系弱6数据库阶

5、段的管理方式具有的特点老师:(1)采用复杂的数据模型表示数据结构 (2)有较高的数据独立性 (3)数据库系统为用户提供方便的用户接口 (4)系统提供四方面的数据控制功能 (5)对数据的操作既可以以记录为单位,又可以以数据项为单位7数据描述三个领域之间的关系:老师:从事物的特性到计算机中的数据表示,经历了三个领域:现实世界、信息世界、机器世界。 (1)现实世界:存在于人们头脑之外的客观世界,称为现实世界。 (2)信息世界:是现实世界在人们头脑中的反映。 (3)机器世界:信息世界的信息在机器世界中以数据形式存储。 信息世界中数据描述的术语有:实体、实体集、属性、实体标识符 机器世界中数据描述的术语

6、有:字段、记录、文件、关键码 它们的对应关系是:在数据库中每个概念都有类型和值之区分,类型是概念的内涵,值是概念的外延8关系模型的特点:老师:关系模型的主要特征是用二维表格结构表达实体集,用外键表示实体间联系。 特点是:关系模型与层次、网状的最大差别是用关键码而不是用指针导航数据,表格简单,用户易懂,编程时不涉及存储结构、访问技术等细节。9 DBMS的主要功能:书上P1和P2答:1、建立数据库功能2、数据操纵功能3、数据库的控制与维护功能4、数据的网络化网上:(1)数据库的定义功能:DBMS提供数据定义语言(DDL)定义数据库的三级结构及其相互之间的映象、完整性、安全控制等约束。 (2)数据库

7、的操纵功能:DBMS提供数据操纵语言(DML)实现对数据库中数据的操作。 (3)数据库的保护功能:DBMS对数据库的保护主要通过数据库的恢复、数据库的并发控制、数据库的完整性控制、数据库的安全性控制等四个方面实现。 (4)数据库的存储管理:DBMS的存储管理子系统提供了数据库中数据和应用程序的一个界面,其职责是把各种DML语句转换成低层的文件系统命令,起到数据的存储、检索和更新的作用。 (5)数据库的维护功能:DBMS中实现数据库维护功能的实用程序主要有数据装载程序、备份程序、文件重组织程序、性能监控程序。 (6)数据字典(DD):数据库系统中存放三级结构定义的数据库称为数据字典,对数据库的操

8、作都要通过访问DD才能实现。10 DBS的组成:书上P2:由数据库、数据库管理系统、操作系统、编译系统、应用程序、计算机硬件和用户组成的复杂系统。网上:DBS是一个实际可运行的,按照数据库方法存储、维护和向应用系统提供数据支持的系统,它是数据库、硬件、软件、数据库管理员(DBA)的集合体。 (1)数据库(DB):是与一个特定组织各项应用有关的全部数据的集合,由应用数据的集合(物理数据库)、关于各级数据结构的描述(描述数据库)两部分组成。 (2)硬件:包括中央处理机、内存、输入输出设备、数据通道等硬件设备。 (3)软件:包括DBMS、OS、各种宿主语言和应用开发支持软件等程序。 (4)DBA:D

9、BA是控制数据整体结构的人,负责DBS的正常运行。第三章二、填空题1实现数据完整性的途径有:规则(Rule)、缺省值/默认值(Default)、约束(Constraint)、存储过程等。2在数据库的表中, 主键是指表中的某一列,该列的值唯一标识一行。3SQL Server 2005的文件包括: 数据文件(.mdf或.ndf)和日志文件(.ldf)。4数据完整性实质,存储在数据库中的数据正确无误并且相关数据具有一致性,根据完整性机制所作用的数据库对象和范围不同,可以分为:实体完整性、参照完整性、用户自定义完整性,其中外键可以实现 _参照_ 数据完整性。主键可以实现_实体_完整性。5. 属性的取值

10、范围称为该属性的域。6. 数据库的数据完整性是指数据库中数据的正确性、相容性和有效性。三、简答题1什么是外键以及外键的特点?网上: 一个关系的某个属性(或属性集合)不是该关系的主键或只是主键的一部分,却是另一个关系的主键,则称这样的属性为该关系的外键。特点:(课件:)外键表示了两个关系间的联系。以另一个关系的外键作主键的表被称为主表,具有此外键的表被称为主表的从表。2简述数据模型的三个组成部分:P25老师:数据结构、数据操作、数据完整性约束是结构数据模型的三个组成部分。数据结构:是指对实体类型和实体间联系的表达和实现数据操作:是指对数据库的检索和更新(插、删、改)两类操作的实现数据完整性约束:

11、给出数据及其联系应具有的制约和依赖规则。3 关系模型的三类完整性规则:P28老师:(1)实体完整性规则:这条规则要求关系中元组在组成主键的属性上不能有空值。 (2)参照完整性规则:这条规则要求“不引用不存在的实体”。 (3)用户定义的完整性规则:它反映某一具体应用涉及的数据必须满足的语义要求。4第一范式(1NF):P31老师:如果关系模式R的所有属性的值域中每一个值都是不可再分解的值,则称R是属于第一范式模式。5 第二范式(2NF):P32老师:如果关系模式R为第一范式,并且R中每一个非主属性完全函数依赖于R的候选键,则称R是第二范式模式。6 第三范式(3NF):P32老师:如果关系模式R是第

12、一范式,且每个非主属性都不传递依赖于R的候选键,则称R是第三范式的模式。第四章二、填空题1SQL 语言中行注释的符号为- ;块注释的符号为 /* */ 。2使用索引可以减少检索时间,根据索引的存储结构不同将其分为两类:聚集索引_ 和 非聚集索引 。3所有的数据库都有一个主数据文件和一个或多个事务日志文件,此外,还可能有次数据文件。3向表中添加数据应使用insert into命令,更新数据应使用update命令。5在SQL Server2005中,约束有非空约束、默认约束、主、外键约束、检查约束和唯一约束等5种类型。6一张表允许有多个外键,但只能有一个主键7要删除一条记录使用delete指令.8

13、在T-SQL语言中,若要修改某张表的结构,应该使用的修改关键字是Alter;若要创建一个数据库,应该使用的语句是creat database <数据库名>。9在一个表中主键的个数为:1个。10在SQL Server 2005中,索引的顺序和数据表的物理顺序相同的索引是:聚集索引。11在SQL Server 2000中修改表的结构应使用关键字alter table,修改表中的数据应使用关键字update 。12SQL Server中索引类型包括的三种类型分别是聚集索引、非聚集索引和唯一索引13删除表命令是:drop table 表名。14. 在SQL语言中,如果要对一个基本表增加列和

14、完整性约束条件,应该使用SQL语言的alter table语句。15. SQL语言支持数据库三级模式结构。在SQL中,内模式对应于"存储文件",概念模式对应于基本表。三、简答题1为什么要创建索引书上P88:1、 加速数据检索2、 优化查询、3、 强制数据完整性网上:创建索引可以大大提高系统的性能。第一,通过创建唯一性索引,可以保证每一行数据的唯一性。第二,可以大大加快数据的检索速度,这也是所以的最主要原因。第三,可以加速表与表之间的连接,特别是实现数据的参考完整性方面特有意义。第四,在使用ORDER BY和GROUP BY子句进行数据检索时,同样可以显著减少查询中分组和排序

15、的时间。第五,通过使用索引,可以在查询过程中,使用查询优化器,提高系统性能2根据表回答以下问题两个表是先建关系,然后才输入数据,其中的关系为:book表中author_id作为外键关联到authors表的主键author_id上。book表列名数据类型长度允许空book_idint4book_namevarchar50author_idint4authors表列名数据类型长度允许空author_idint4author_namevarchar30(1) 用Transact-SQL语句建立authors表(包括建立主键,列取值非空)(6分)网上:create table authors (aut

16、hor_id int primary key, author_name varchar(30) not null)(2)根据参照完整性在两个表都要输入第一个记录时一般应先输入哪个表的数据?为什么? 答:网上:如果先建立关系,然后再输入记录,在输入第一条记录时一般要先输入authors表,后输入book表。因为根据表之间的参照完整性,book表中author_id列的值要么取空值、要么取authors表中author_id列的某一个值,在此时book表的author_id列是不允许取空值的,所以应先输入authors表,后输入book表。3数据库包含哪些哪几种后缀名的文件必须,这些文件分别存放在

17、什么的信息?P36网上:主要数据文件(.mdf) 包含数据用户收集的信息,还有数据库其他相关的信息, 日志数据文件(.ndf) 存放用户对数据库的增删改查的信息,用于备份恢复使用4索引的意义 书上P88:1、加速了数据检索2、优化了查询、3、强制了数据完整性网上:建立索引是加快表的查询速度的有效手段。可以根据需要在基本表上建立一个或多个索引,从而提高系统的查询效率。SQL语言支持用户根据应用环境的需要在基本表上建立一个或多个索引,以提供多种存取路径,加快查找速度。第五章1关系代数是以集合代数为基础发展起来的,它是一种关系操纵语言,它的操作对象和操作结果都是关系。2. 在关系数据模型中,二维表的

18、行称为元组,二维表的列称为属性。3. 关系代数的五种基本操作是并、差、笛卡尔积、投影和选择。第六章二、填空题1如果要计算表中的行数,可以使用聚合函数count(*)。2 用SELECT进行模糊查询时,可以使用_like_或no like匹配符,但要在条件值中使用%或_等通配符来配合查询。并且,模糊查询只能针对字段类型是字符型的查询。3 计算字段的累加和的函数是:sum(),统计项目数的函数是:count()。4对数据进行统计时,求最大值的函数是Max()。5模糊查询符号 % 代表任意字符,查询条件 e%im 代表意思是 查询一字母e开头,中间任意字符(串),im结尾的字符串 。6union可以

19、把两个或多个SELECT语句的查询结果组合成一个结果集,使用时要求所有SELECT语句的列数应相同,对应列的数据类型相容。7设有关系SC(sno, cname, grade),各属性的含义分别为学号、课程名、成绩。若要将所有学生的“数据库系统”课程的成绩增加5分,能正确完成该操作的SQL语句是 update set SC_grade=grade +5 where cname =”数据库系统”。三、简答题1说出以下聚合数的含义:avg,sum,max,min,count,count(*)P135-P136书上:AVG:计算一类值的平均值(该列必须是数值型)SUM:计算一列值的总和(该列必须是数值

20、型)MAX:求一列值中的最大值MIN:求一列值中的最小值COUNT:返回满足指定条件的记录值COUNT(*):统计元组的个数2inner join是什么意思?作用是什么?写出基本语法结构P133INNER JOIN 内联接,用于返回两个表中要查询的列数据通信Select 列名from 表名1 inner join 表名2 on 条件表达式3左向外联接,右向外联接,全联接的关键字如何写 P134左向外联接:Left outer join 右向外联接:Right outer join 全联接:Full outer join 4用一条SQL语句查询sc表中每门课都大于80分的学生姓名Name kec

21、heng fengshu张三 语文 81张三 数学 75李四 语文 76李四 数学 90王五 语文 81王五 数学 100王五 英语 90网上:select distinct name from SC where name not in (select distinct name from SC where fenshu <= 80); 或者select name from SC group by name having min(fenshu) > 80;二、简答题,按要求写出SQL语句,使用SQL标准语句Create table dept(Deptno varchar(10) p

22、rimary keyDname varchar(10);Create table emp(Empno varchar(10) primary keyEname varchar(10)Job varchar(10)Mgr varchar(10)Sal varchar(10)Deptno varchar(10) references dept(deptno);Drop table dept;Drop table emp;Insert into dept values(1,事业部);Insert into dept values(2,销售部);Insert into dept values(3,技术

23、部);Insert into emp values(01,jacky,clerk,tom,1000,1);Insert into emp values(02,tom,clerk,2000,1);Insert into emp values(07,biddy,clerk,2000,1);Insert into emp values(03,jenny,sales,prety,600,2);Insert into emp values(04,pretty,sales,800,2);Insert into emp values(05,buddy,jishu,canndy,1000,3);Insert

24、into emp values(06,canndy,jishu,1500,3);Select*from dept;Select*from emp;1、 列出emp表中各部门的部门号,最高工资,最低工资select deptno as 部门号,max(sal) as 最高工资,min(sal) as 最低工资 fromemp group by deptno;2、 列出emp表中各部门job为CLERK的员工的最低工资,最高工资。select max(sal) as 最高工资,min(sal) as 最低工资,deptno as 部门号 from emp wherejob='clerk&#

25、39; group by deptno;3、 对于emp中最低工资小于2000的部门。列出job为CLERK的员工的部门号,最低工资,最高工资select b.deptno as 部门号,max(sal) as 最高工资,min(sal) as 最低工资 from emp as b where job='clerk' and (select min(sal)from emp as a where a.deptno=b.deptno)<2000 group by b.deptno;4、 根据部门号由高到低,工资由低到高对应每个员工的姓名,部门号,工资select ename

26、 as 姓名,deptno as 部门号,sal as 工资 from emp order by deptno desc,sal asc;5、 列出buddy所在部门中每个员工的姓名与部门号select b.ename as 姓名,b.deptno as 部门号 from emp as b where b.deptno= (select a.deptno from emp as a where a.ename='buddy');6、 列出每个员工的姓名,工资,部门号,部门名select ename as 姓名,job as 工作,dept.deptno as 部门号,dept.

27、dname as 部门名 from emp,dept where emp.deptno=dept.deptno;7、 列出emp中工作为CLERK的员工的姓名,工作,部门号,部门名select ename as 姓名,job as 工作,dept.deptno as 部门号,dept.dname as 部门名 from emp,dept where emp.deptno=dept.deptno and job='clerk'8、 对于emp中有管理者的员工,列出姓名,管理者姓名(管理者外键为mgr)select a.deptno as 部门号,a.ename as 员工,b.e

28、name as 管理者 from emp as a,emp as b where a.mgr is not null and a.mgr=b.ename;9、 对于dept表中,列出所有部门名,部门号,同时列出各部门工作为CLERK的员工名与工作select a.deptno as 部门号,a.dname as 部门名,b.ename as 员工名,b.job as 工作 from dept as a, emp as b where a.deptno=b.deptno and b.job='clerk'10、对于工资高于本部门平均水平的员工,列出部门号,姓名,工资,按部门号排序

29、select b.deptno as 部门号,b.ename as 姓名,b.sal as 工资 from emp as b where b.sal>(select avg(a.sal) from emp as a where a.deptno=b.deptno) order by b.deptno;11、对于emp,列出各个部门中工资高于本部门平均工资的员工数和部门号,按部门号排序select a.deptno as 部门号,count(a.sal) as 员工数 from emp as a where a.sal>(select avg(b.sal) from emp as b

30、 where a.deptno=b.deptno) group by a.deptno order by a.deptno;12、对于emp中工资高于本部门平均水平,人数多于1人的,列出部门号,人数,平均工资,按部门号排序select count(a.empno) as 员工数,a.deptno as 部门号,avg(sal) as 平均工资 from emp as a where (select count(c.empno) from emp as c where c.deptno=a.deptno and c.sal>(select avg(sal) from emp as b wh

31、ere c.deptno=b.deptno)>1 group by a.deptno order by a.deptno;13、对于emp中低于自己工资至少5人的员工,列出其部门号,姓名,工资,以及工资少于自己的人数select a.deptno as 部门号,a.ename as 姓名,a.sal as 工资,(select count(b.ename) from emp as b where b.sal<a.sal) as 人数 from emp as a where (select count(b.ename) from emp as b where b.sal<a.s

32、al)>=5三、按要求写出SQL语句TableX有三个字段Code,Name,Age,其中Code为主键;TableY有三个字段Code,Class,Score,其中Code+Class为主键,两表记录如下:Code Name Age Code Class Score97001 张三 22 97001 数学 8097002 赵四 21 97002 计算机 5997003 张飞 20 97003 计算机 6097004 李五 22 97004 数学 551、请写出SQL,列出所有姓张的学生,并按年龄从小到大排列; select * from TableX where name like &

33、#39;张%' order by age 2、 请写出SQL,取出计算机科考成绩不及格的学生; select * from tableX where code in (select code from tableY WEHRE class='计算机' and score <60) 3、 通过等值联接,取出Name,Class,Score,请写出SQL即输出结果 select ,b.class,b.score from tableX a,tableY b where a.code=b.code 4、 通过外联接,取出每个学生的Name,Class,Sco

34、re,请写SQL输出结果 select ,b.class,b.score from tableX full join tableY on a.code=b.code 5、 请写SQL,在TableX表中增加一条学生记录(学号:97005 姓名:赵六 年龄:20); insert into tablex values('97005','赵六',20) 或insert into tablex ('Code','Name',Age) values('97005','赵六',20) 6、 李五的

35、年龄记录错了,应该是21,请写SQL,根据主键进行更新; update tablex set age=21 where code='97004' 7、请写SQL,删除TableX中没有考试成绩的学生记录,请使用not in条件 delete tablex where code not in (select code from tabley)第七章二、简答题1简述视图的意义和优点?P160意义:1、可提供用户以多角度观察数据库中的数据2、能像真实表一样显示数据,简化对数据的访问3、视图可像表一样进行一定条件下的操作,并保证基础表的安全P160优点:具有为用户定制数据、隐藏数据库复

36、杂性、简化操作、提供安全机制以及改进性能等优点。2视图可以更新吗?会影响到实际表吗?网上:视图是可以更新的,视图基于基本表上的虚拟表,对视图的更新会直接影响到实际表3 什么是视图,它与表的区别是什么: 网上:在SQL中,外模式一级数据结构的基本单位是视图,视图是从若干基本表和(或)其他视图构造出来的表。我们创建一个视图时,只是把其视图的定义存放在数据字典中,而不存储视图对应的数据,因此,视图被称为“虚表”,这是它与表的主要区别。4简述视图的概念及优点?答:课件P2:视图是一个虚拟表,用户可以根据其对数据的特殊要求,通过视图从一个表或多个表中提取一组记录,在基本表的基础上自定义数据表格或(选择题中的): 视图是关系数据库系统提供给用户以多种角度观

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论