数据库作业1.doc

上传人:李医生 文档编号:7196170 上传时间:2020-11-05 格式:DOC 页数:11 大小:29.01KB
返回 下载 相关 举报
数据库作业1.doc_第1页
第1页 / 共11页
数据库作业1.doc_第2页
第2页 / 共11页
数据库作业1.doc_第3页
第3页 / 共11页
数据库作业1.doc_第4页
第4页 / 共11页
数据库作业1.doc_第5页
第5页 / 共11页
点击查看更多>>
资源描述

《数据库作业1.doc》由会员分享,可在线阅读,更多相关《数据库作业1.doc(11页珍藏版)》请在三一文库上搜索。

1、数据库应用技术第1次作业及答案第一章 思考与练习题一、选择题 1 三级模式间存在两种映射,它们是(C)。A模式与子模式间,模式与内模式间B子模式与内模式间,外模式与内模式间C外模式与模式间,模式与内模式间D模式与内模式间,模式与模式间 2 SQL Server系统中的所有系统级信息存储于哪个数据库( A )。Amaster Bmodel Ctempdb Dmsdb 3 下面关于tempdb数据库描述不正确的是( D )。A是一个临时数据库 B属于全局资源C没有权限限制 D是用户建立新数据库的模板 4 在数据库技术中,面向对象数据模型是一种( B )。A概念模型B结构模型C物理模型D形象模型 5

2、 数据库管理系统常见的数据模型有(B)。A网状、关系和语义B层次、关系和网状C环状、层次和关系D网状、链状和层次 6 用户看到的数据表,属于数据库系统三级模式中的( D )。A外模式B内模式C子模式D模式 7 对数据的插入属于数据库管理系统( B )的功能。A数据定义B数据操纵C数据库的运行管理D数据库的建立和维护 8 保持数据的完整性属于数据库管理系统( C )的功能。A数据定义B数据操纵C数据库的运行管理D数据库的建立和维护 9 在SQL Server数据库中,默认情况下Sys通常是( C )。A数据文件的后缀B事务日志文件的后缀C系统表表名的前缀D辅助文件的后缀二、填空题 1 计算机数据

3、处理技术大致经历了( 人工管理 )、( 文件管理 )、( 数据库管理 )等不同的发展阶段。 2 数据库系统由( 外模式 )、( 模式 )和( 内模式 )三级抽象模式构成。 3 数据库管理系统的主要功能包括( 数据定义 )、( 数据操纵 )、( 数据库的运行管理 )、( 数据库的建立和维护 )。 4 关系模型由三部分组成( 数据结构 )、( 关系操作集合 )和( 关系的完整性 )。 5 SQL Server提供了大量易用的管理工具,比较常用的主要有( 服务管理器 )、( 企业管理器 )和( 查询分析器 )。 6 数据文件的后缀是( mdf )。 7 事务日志文件的后缀是( ldf )。 8 SQ

4、L Server数据库分为 ( 系统数据库 )和( 用户数据库 )两种类型。三、简答题1什么是数据和数据处理?数据与信息的区别联系是什么?参考答案:数据(Data)是一组表示数量、行动和目标的非随机的可鉴别的符号。数据处理通常包括查找、统计、分类、修改、计算、汇总等各种方法。数据(Data)是一组表示数量、行动和目标的非随机的可鉴别的符号。信息(Information)是经过加工的,能对接收者的行为和决策产生影响的、有价值的数据。如果将数据比喻为原料,那么信息就是数据经过加工而生产的产品,是有价值的数据。与原料和产品的概念相似,一个系统的产品可能是另一个系统的原料,那么一个系统的信息可能成为另

5、一个系统的数据。2数据库、数据库管理系统、数据库系统之间到底是什么关系?参考答案:数据库就是各种相关数据的集合和容器。数据库所保存的数据是指长期储存在计算机内、有组织的、可共享的数据集合。数据库中的数据必须按一定的数据模型组织、描述和储存,具有较小的冗余度、较高的数据独立性和易扩展性,并可以被一定范围内的各种用户共享。数据库管理系统是对数据库进行管理的系统软件,位于用户和操作系统之间,为用户或应用程序提供访问数据库的方法和工具。广义上,数据库系统就是采用了数据库技术的计算机系统,一般由数据库、数据库管理系统(及其开发工具)、应用系统、数据库管理员和用户构成。狭义上讲,数据库系统主要指数据库和数

6、据库管理系统,由于这二者在应用中的相互依赖性,所以在一般不引起混淆的情况下常常把数据库系统简称为数据库。3请描述一下SQL Server数据库的存储结构。参考答案:SQL Server数据库的存储结构包括物理存储结构和逻辑存储结构两个层面。在物理层面上,SQL Server数据库是由两个操作系统文件组成的,即数据文件和事务日志文件,它们的后缀分别是MDF和LDF。数据文件主要用于存储数据,事务日志文件主要用于存储数据库的更新情况等事务日志信息。在逻辑层次上,数据库是由表、视图、存储过程等一系列数据对象组成的。当采用SQL Server企业管理器将上述数据库文件“打开”后,就能看到数据库的逻辑结

7、构了,如图XXX所示。数据库中的数据分别存储在几个不同的对象中,而这些对象是用户在操作数据库时,实际能够看到和接触到的,属于逻辑存储结构。常用的数据库对象主要包括:表(Table)、索引(Index)、视图(Views)、触发器(Triggers)、存储过程(Store Procedures)、缺省(Default)、约束(Constraints)、用户(Users)以及图表(Diagram)和用户自定义的数据类型等。在以后的章节中,我们将逐步学习这些对象的使用方法。4简述关系模型的组成。参考答案:系模型是目前最重要的一种数据模型。关系数据库系统采用关系模型作为数据的组织方式。关系模型由三部分

8、组成:数据结构、关系操作集合和关系的完整性。数据结构是指在关系模型中,无论是数据还是数据之间的联系都是以二维表(关系)这一种简单的结构表示的,这即符合人们使用数据的习惯,同时也便于计算机实现。关系操作是指关系代数(或等价的关系演算)中并、交、差、选择、投影、连接等。关系模型给出了关系操作的能力和特点,但不对DBMS的语言给出具体的语法要求。关系语言的特点是高度的非过程化。其操作方式的特点是集合操作,即操作的对象和结果是集合,称为一次一集合的方式,而不是一次一个记录的方式。关系完整性包括实体完整性、参照完整性和用户自己定义的完整性。实体完整性是保证数据库中记录的惟一性,即每个记录的主键不能为空值

9、,也不能与其他记录的主键相同。参照完整性是保证表与表之间语意上的完整性,即当一个表引用在另一个表中定义的实体时,要保证这个实体的有效性。这两种完整性是关系模型必须满足的约束条件,应该由关系系统自动支持。而用户自定义完整性反映了用户的要求,是用户自行定义的。第二章思考与练习题一、选择题 1 下述关于索引的描述,正确的是( B )。A撤销索引会同时撤销数据库中与之相关的内容B建立索引后,会影响基本表的插入速度C基本表的记录数量越多,越不应该建立索引D基本表的记录越长,越不应该建立索引 2 下述关于视图的描述,正确的是( C )。A视图仅由一个基本表导出B执行视图比在客户端直接执行SELECT语句的

10、速度要慢C在SQL Server中,可以像基本表一样对视图进行查询操作D视图存储在客户端的数据库中 3 如果希望从学生表中查询出所有姓“张”的同学,那么条件语句应该是( B )。AWhere 姓名 % 张BWhere 姓名 LIKE 张CWhere 姓名 % LIKE张DWhere 姓名 LIKE 张 4 下列SQL语句中,能够完成求某列最大值的是( B )。ASELECT AVG(Age) FROM StudentBSELECT MAX(Age) FROM StudentCSELECT MIN(Age) FROM StudentDSELECT COUNT(*) FROM Student 二、

11、填空题1SQL数据定义语言的主要作用是创建存储数据的结构,而数据操纵语言的主要作用则是向数据库中填写数据,具体包括 增加、删除、修改 等操作。2当需要对查询结果进行排序时,可以指定其排序方式,字段后使用 ASC 表示升序, DESC 表示降序。三、简答题1、什么是SQL,请简要说明它的组成和特点。参考答案:结构化查询语言,Structured Query Language,简称 SQL,是关系数据库的标准语言。SQL语言共分为四大类:数据定义语言,数据查询语言,数据操纵语言,数据控制语言。它的特点包括:非过程化语言,统一的语言,是所有关系数据库的公共语言。2、索引的作用是什么?SQL Serv

12、er有哪几类索引,各自的特点是什么?参考答案:索引(Index)提供了一种快速访问数据的途径,索引是在基本表的列上建立的一种数据加对象,索引是为了加速查询速度而创建的。实际的索引通常是这两大类5种方式的组合。(1)单列索引:对基本表的某一单独的列进行索引,是最简单和最常用的索引类型,通常情况下,应对每个基本表的主关键字建立单列索引。(2)惟一索引:一旦在一个或多个列上建立了惟一索引,则不允许在表中相应的列上插入任何相同的取值。使用惟一索引不但能提高查询性能,还可以维护数据的完整性。(3)复合索引:是针对基本表中两个或两个以上列建立的索引。(4)聚集索引:会改变基本表中记录的物理存储顺序。即表中

13、记录的物理排序顺序不再按插入的先后排列,而是根据索引列重新排序。(5)非聚集索引:表中记录的物理顺序与索引顺序不同,表中的记录仍按实际插入的先后顺序排列,不按索引列排序。3、什么是基本表?什么是视图?视图有什么特点?在什么情况下需要创建视图?参考答案:表是一个由行、列组成的二维结构,通常把行称做记录,把列称为字段。视图是由查询数据库表产生的,它其实是一个虚拟的表,它限制了用户能看到和修改的数据。视图的特点是在基本表或其他视图上建立的表,它的结构和内容都来自某个基本表,是依据基本表存在而存在的。删除一个视图时,不会对基本表产生任何影响,但当删除一张基本表时,与之相关联的视图就会自动被删除。如果要

14、限制用户能够看到的数据库中的信息,可以使用视图。4、谓词LIKE的作用是什么?参考答案:确定给定的字符串是否与指定的模式匹配。模式可以包含常规字符和通配符字符。模式匹配过程中,常规字符必须与字符串中指定的字符完全匹配。5、如果创建一个数据库其SQL语句是什么?参考答案:CREATE DATABASE 数据库名称6、存储过程的含义是什么?创建存储过程的SQL语句是什么?参考答案:存储过程(Stored Procedure)是一组预先编译好的,以一种可执行的形式永久地存储在数据中的SQL代码,在master数据库中存储了一些SQL Server事先定义好的系统存储过程,通常以sp_xxxx做为存储

15、过程的名字。当用户创建数据库时,也会自动生成一些事先定义好的存储过程,通常以dt_xxxx做为名字。创建存储过程的SQL语句是:(1)语句格式:CREATE PROCEDURE AS (2)语句功能:创建一个存储过程,多数是指利用SQL Server的Transact-SQL编写的程序。7、什么是事务?举例说明事务处理的作用是什么?参考答案:事务(Transaction)是并发控制的基本单位,它反映了现实世界中需要以一个完整的单位提交的一项工作。SQL Server通过事务机制,将逻辑相关的一组操作捆绑在一起,以便服务器保持数据的完整性。它是SQL复杂程序设计必不可少的内容。事务需要用户根据实

16、际业务规则定义,有一定的难度,但其原理比较简单。举例说,如果我们正在使用UPDATE语句同时对学生表、成绩表中的学号”20030001”改为”20040001”。这个任务需要两条UPDATE语句组成,即:UPDATE 学生表 SET 学号=20040001 WHERE 学号=20030001UPDATE 成绩表 SET 学号=20040001 WHERE 学号=20030001如果在执行完第一个语句后,计算机突然断电,而第二条语句还没来得急执行,数据出现了不一致怎么办?这时候就需要用到SQL的事务控制功能了。 如果使用了SQL Server的事务控制机制,以上两个问题均可获得很了的解决。在使用

17、事务的情况下,SQL Server可以保证,要么所有的记录要么全部处理,要么一行也不处理。如果修改了全部记录的一半时服务器出错了,SQL Server会返回到以前未执行UPDATE操作前的位置,清除它已经修改过的数据,这就是事务处理的作用。8、SQL Server有哪些数据类型,它们的主要用途是什么?参考答案:SQL Server提供了数值型、字符型、日期型、二进制型、位型、双字节型等6大类数据类型。数据类型是数据的一种属性,表示数据所表示信息的类型。任何一种计算机语言都定义了自己的数据类型。9、假设某教学管理数据库有以下三张表,请写出下列问题的SQL语句:学生(学号,姓名,年龄,性别)课程(

18、课程号,课程名,任课教师)成绩(学号,课程号,成绩)(1)如何在SQL Server上创建这三张表;参考答案:学生表:create table 学生表 (学号 char (8) primary Key,姓名 char(8),年龄 int,性别 bit)课程表:create table 课程表 (课程号 char (7) primary Key,课程名 char(20),任课教师 char (8)成绩表:create table 成绩表 (学号 char (8),课程号 char (7),成绩 Numeric (4,2)(2)查询刘峰教师所授课程号,课程名;参考答案:Select课程号, 课程名

19、 from课程表 where任课教师= 刘峰(3)查询年龄大于20岁的所有男同学的学号、姓名;参考答案: Select 学号, 姓名 from 学生表 where 性别=1 and 年龄20(4)查询至少选修了两门课程(含两门)的学生学号;参考答案:select 学号 from 成绩group by 学号having count(学号)=2 (5)查询王文芳同学选修的所有课程的课程号;参考答案:Select 课程号 from 成绩表, 学生表Where学生表.姓名= 王文芳 and 学生表.学号=成绩表.学号(6)查询王文芳同学不学的课程的课程号;参考答案:select 课程号 from 成绩

20、表where 课程号 not in (select 课程号 from 学生表,成绩表 where 学生表.姓名=王文芳 and 学生表.学号=成绩表.学号) (7)查询所有上刘峰老师课程的学生学号;参考答案: Select 学号 from 成绩表,课程表,学生表Where 课程表.任课教师=刘世峰 and 课程表.课程号=成绩表.课程号 and 课程表.学号=成绩表.学号(8)查询所有选修“数据库原理”的学生的学号;参考答案: Select 学号 from 成绩表,课程表where 课程表.课程名=数据库技术 and 课程表.课程号=成绩表.课程号(9)向学生表中插入一条记录(2003001,吴红,21,女);(1表示女,0表示男)参考答案:insert into 学生表 values (2003001,吴红,21,1)(10)删除三张表中所有学号为20020001的学生信息;参考答案:Delete from学生表 where 学号 20020001Delete from学生表 where 学号 20020001(11)把学号为20030002的学生的年龄改为22岁;参考答案: Update 学生表 set 年龄=22 where学号=20030002

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 科普知识


经营许可证编号:宁ICP备18001539号-1