数据库实验指导书++数据库系统概论(第四版)++王珊、萨师煊
- 格式:doc
- 大小:1.53 MB
- 文档页数:59
数据库第四版答案数据库第四版答案((王珊萨师煊萨师煊))第11章并发控制1.在数据库中为什么要并发控制?答:数据库是共享资源,通常有许多个事务同时在运行答:数据库是共享资源,通常有许多个事务同时在运行。
当多个事务并发地存取数据库时就会产生同时读取和/或修改同一数据的情况改同一数据的情况。
若对并发操作不加控制就可能会存取和存储不正确的数据存储不正确的数据,,破坏数据库的一致性破坏数据库的一致性。
所以数据库管理系统必须提供并发控制机制。
2.并发操作可能会产生哪几类数据不一致?用什么方法能避免各种不一致的情况?答:并发操作带来的数据不一致性包括三类:丢失修改答:并发操作带来的数据不一致性包括三类:丢失修改、、不可重复读和读可重复读和读““脏’夕数据。
(l )丢失修改丢失修改((lost update )两个事务Tl 和T2读入同一数据并修改,读入同一数据并修改,T2T2提交的结果破坏了(覆盖了)Tl 提交的结果,导致Tl 的修改被丢失的修改被丢失。
(2)不可重复读(Non 一Repeatable Read )不可重复读是指事务Tl 读取数据后,事务几执行更新操作,使Tl无法再现前一次读取结果无法再现前一次读取结果。
(3)读“脏”数据(Dirty Read )读“脏’夕数据是指事务Tl 修改某一数据修改某一数据,,并将其写回磁盘,事务几读取同一数据后,Tl 由于某种原因被撤销由于某种原因被撤销,,这时Tl 已修改过的数据恢复原值已修改过的数据恢复原值,,几读到的数据就与数据库中的数据不一致中的数据不一致,,则几读到的数据就为则几读到的数据就为““脏”数据数据,,即不正确的数据确的数据。
避免不一致性的方法和技术就是并发控制避免不一致性的方法和技术就是并发控制。
最常用的技术是封锁技术用的技术是封锁技术。
也可以用其他技术也可以用其他技术,,例如在分布式数据库系统中可以采用时间戳方法来进行并发控制。
3.什么是封锁?基本的封锁类型有几种?试述它们的含义。
第1章绪论1.试述数据、数据库、数据库系统、数据库管理系统的概念。
答:( l)数据(Data ) :描述事物的符号记录称为数据。
数据的种类有数字、文字、图形、图像、声音、正文等。
数据与其语义是不可分的。
解析在现代计算机系统中数据的概念是广义的。
早期的计算机系统主要用于科学计算,处理的数据是整数、实数、浮点数等传统数学中的数据。
现代计算机能存储和处理的对象十分广泛,表示这些对象的数据也越来越复杂。
数据与其语义是不可分的。
500这个数字可以表示一件物品的价格是500元,也可以表示一个学术会议参加的人数有500人,还可以表示一袋奶粉重500克。
( 2)数据库(DataBase,简称DB ) :数据库是长期储存在计算机内的、有组织的、可共享的数据集合。
数据库中的数据按一定的数据模型组织、描述和储存,具有较小的冗余度、较高的数据独立性和易扩展性,并可为各种用户共享。
( 3)数据库系统(DataBas。
Sytem,简称DBS ) :数据库系统是指在计算机系统中引入数据库后的系统构成,一般由数据库、数据库管理系统(及其开发工具)、应用系统、数据库管理员构成。
解析数据库系统和数据库是两个概念。
数据库系统是一个人一机系统,数据库是数据库系统的一个组成部分。
但是在日常工作中人们常常把数据库系统简称为数据库。
希望读者能够从人们讲话或文章的上下文中区分“数据库系统”和“数据库”,不要引起混淆。
(4)数据库管理系统(DataBase Management sytem,简称DBMs ):数据库管理系统是位于用户与操作系统之间的一层数据管理软件,用于科学地组织和存储数据、高效地获取和维护数据。
DBMS的主要功能包括数据定义功能、数据操纵功能、数据库的运行管理功能、数据库的建立和维护功能。
解析DBMS是一个大型的复杂的软件系统,是计算机中的基础软件。
目前,专门研制DBMS的厂商及其研制的DBMS产品很多。
著名的有美国IBM 公司的DBZ关系数据库管理系统和IMS层次数据库管理系统、美国Oracle公司的orade关系数据库管理系统、s油ase公司的s油ase关系数据库管理系统、美国微软公司的SQL Serve,关系数据库管理系统等。
目录实验一熟悉POWER DESIGNER (2)实验二SQL SERVER 2000的安装与使用5实验三创建数据库、表15实验四SQL SERVER2000查询分析器26实验五SQL语言的DDL34实验六SQL语言的DML初步36实验七DML的数据查询38实验八SQL语言综合练习42实验九嵌入式SQL错误!未定义书签。
实验十数据库设计错误!未定义书签。
实验一熟悉Power Designer一、实验目的1、掌握安装并破解PD的方法。
2、通过阅读和分析应用实例“学生选课系统CDM”,了解和熟悉PowerDesigner CDM及其相关知识。
3.掌握运用Power Designer工具建立CDM的方法。
4.初步掌握从Power Designer CDM生成相应的PDM的方法。
二、实验内容及实验步骤1、PD环境的介绍Power Designer的4种模型文件:(1) 概念数据模型(CDM)CDM 表现数据库的全部逻辑的结构,与任何的软件或数据储藏结构无关。
一个概念模型经常包括在物理数据库中仍然不实现的数据对象。
它给运行计划或业务活动的数据一个正式表现方式。
(2)物理数据模型(PDM) :PDM 叙述数据库的物理实现。
藉由PDM ,你考虑真实的物理实现的细节。
你能修正PDM 适合你的表现或物理约束。
(3)面向对象模型(OOM)一个OOM包含一系列包,类,接口, 和他们的关系。
这些对象一起形成所有的( 或部份) 一个软件系统的逻辑的设计视图的类结构。
一个OOM本质上是软件系统的一个静态的概念模型。
(4)业务程序模型(BPM)BPM 描述业务的各种不同内在任务和内在流程,而且客户如何以这些任务和流程互相影响。
BPM 是从业务合伙人的观点来看业务逻辑和规则的概念模型,使用一个图表描述程序,流程,信息和合作协议之间的交互作用2、创建CDM(以学生选课系统为例)(1)新建一个CDM,命名为CssCdm(css,Course SelectionSystem ) (2)创建“学生”、“课程”实体和“选课”联系,并命名(3)为各实体和联系创建属性学生(学号,姓名,性别,年龄)课程(课程号,课程名,学分)选课(学号,课程号,成绩)(3)为各实体和联系创建属性学生(学号,姓名,性别,年龄)课程(课程号,课程名,学分)选课(学号,课程号,成绩)每一条属性的M\P\D 分别代表:Mandatory(是否允许为空)Primary Identifier(标识符,类似于数据库中的主键)Displayed(是否显示在实体图表符号中)Domain 相当于自定义数据类型(4)创建实体间的联系“学生”和“教师”之间为多对多(m:n)关系,可将他们转化为两个一对多(1:m)关系(5)生成CDM3、将CDM转化为PDM实验二安装SQL Server 2000一、实验目的SQL Server 2000是Mircosoft公司推出的关系型网络数据库管理系统,是一个逐步成长起来的大型数据库管理系统。
目录实验一熟悉POWER DESIGNER (2)实验二SQL SERVER 2000的安装与使用 (6)实验三创建数据库、表 (17)实验四SQL SERVER2000查询分析器 (29)实验五SQL语言的DDL (38)实验六SQL语言的DML初步 (40)实验七DML的数据查询 (43)实验八SQL语言综合练习 (48)实验九嵌入式SQL ...................... 错误!未定义书签。
实验十数据库设计....................... 错误!未定义书签。
实验一熟悉Power Designer一、实验目的1、掌握安装并破解PD的方法。
2、通过阅读和分析应用实例“学生选课系统CDM”,了解和熟悉PowerDesigner CDM及其相关知识。
3.掌握运用Power Designer工具建立CDM的方法。
4.初步掌握从Power Designer CDM生成相应的PDM的方法。
二、实验内容及实验步骤1、PD环境的介绍Power Designer的4种模型文件:(1) 概念数据模型(CDM)CDM 表现数据库的全部逻辑的结构,与任何的软件或数据储藏结构无关。
一个概念模型经常包括在物理数据库中仍然不实现的数据对象。
它给运行计划或业务活动的数据一个正式表现方式。
(2)物理数据模型(PDM) :PDM 叙述数据库的物理实现。
藉由PDM ,你考虑真实的物理实现的细节。
你能修正PDM 适合你的表现或物理约束。
(3)面向对象模型(OOM)一个OOM包含一系列包,类,接口, 和他们的关系。
这些对象一起形成所有的( 或部份) 一个软件系统的逻辑的设计视图的类结构。
一个OOM本质上是软件系统的一个静态的概念模型。
(4)业务程序模型(BPM)BPM 描述业务的各种不同内在任务和内在流程,而且客户如何以这些任务和流程互相影响。
BPM 是从业务合伙人的观点来看业务逻辑和规则的概念模型,使用一个图表描述程序,流程,信息和合作协议之间的交互作用2、创建CDM(以学生选课系统为例)(1)新建一个CDM,命名为CssCdm(css,Course SelectionSystem ) (2)创建“学生”、“课程”实体和“选课”联系,并命名(3)为各实体和联系创建属性学生(学号,姓名,性别,年龄)课程(课程号,课程名,学分)选课(学号,课程号,成绩)(3)为各实体和联系创建属性学生(学号,姓名,性别,年龄)课程(课程号,课程名,学分)选课(学号,课程号,成绩)每一条属性的M\P\D 分别代表:Mandatory(是否允许为空)Primary Identifier(标识符,类似于数据库中的主键)Displayed(是否显示在实体图表符号中)Domain 相当于自定义数据类型(4)创建实体间的联系“学生”和“教师”之间为多对多(m:n)关系,可将他们转化为两个一对多(1:m)关系(5)生成CDM3、将CDM转化为PDM实验二安装SQL Server 2000一、实验目的SQL Server 2000是Mircosoft公司推出的关系型网络数据库管理系统,是一个逐步成长起来的大型数据库管理系统。
本次实验了解SQL Server 2000的安装过程,熟悉SQL Server 2000软件环境。
学会安装SQL Server 2000的安装。
二、实验内容1.安装Microsoft的数据库服务软件SQL Server 2000:运行服务器目录SQL2000下的可执行文件autorun.exe,进行SQL Server 2000的安装。
安装主界面如图1-1所示。
图1-1选择安装SQL Server 2000组件,出现组件安装界面,如图1-2所示。
图1-2选择安装数据库服务器,进入SQL Server 2000的安装向导,如图1-3所示。
图1-3点击“下一步”,到计算机名称对话框,如图1-4所示。
图1-4“本地计算机”是默认选项,本地计算机的名称就显示在上面,点击“下一步”,出现安装选择对话框,如图1-5所示。
图1-5选择“创建新的SQL Server实例,或安装客户端工具”,点击“下一步”,出现用户信息对话框,如图1-6所示。
图1-6输入姓名和公司名称后,点击“下一步”,出现软件许可协议,如图1-7所示。
图1-7点“是”按钮,出现安装定义对话框,如图1-8所示。
图1-8选择“服务器和客户端工具”,点击下一步,出现实例名对话框,如图1-9所示。
图1-9系统提供了“默认”复选框,点击下一步,出现安装类型选择框,如图1-10所示。
图1-10选择典型,点击“下一步”,出现服务帐户对话框,如图1-11所示。
图1-11接受系统的缺省值,点击“下一步”,出现身份验证模式窗口,如图1-12所示。
图1-12接受系统的缺省值,点击“下一步”,出现开始拷贝文件窗口,如图1-13所示。
图1-13点击“下一步”,开始将文件拷贝到选择的目录中,如图1-14所示。
图1-14文件拷贝完成后,出现安装结束界面,如图1-15所示。
图1-15点击“完成”按钮,完成SQL Server 2000的安装。
三、实验任务1.在计算机上安装数据库软件SQL Server 2000;2.熟悉软件的使用,SQL Server 2000主菜单如图1-16所示:图1-16实验三启动SQL Server2000和建库、表一、实验目的SQL Server 2000的启动和管理工作由服务管理器和企业管理器来实现。
本次实验了解SQL Server 2000的启动,熟悉如何在SQL Server 2000图形环境下建立数据库和表。
学会安装SQL Server 2000的启动和建库、表的操作。
二、实验内容1.启动数据库服务软件SQL Server 2000:在程序菜单中选择Microsoft SQL Server,如图2-1所示:图2-1再选中服务管理器,如图2-2所示:图2-2点击服务管理器后,出现SQL Server服务管理器,如图2-3所示:图2-3点击“开始/继续”按钮,启动SQL Server 2000数据库服务。
启动成功后,在时钟旁边出现一个符号,如图2-4所示。
图2-42.在SQL Server 2000中建立数据库:在程序菜单中选择Microsoft SQL Server,如图2-5所示:图2-5再选中企业管理器,如图2-6所示:图2-6点击企业管理器后,出现企业管理器的主界面,如图2-7所示:图2-7点击左边树状控制栏的+/-号可以打开和关闭SQL Server组中的本地服务项目,在选中数据库服务项目后,单击鼠标右键,出现数据库的菜单,如图2-8所示:图2-8点击新建数据库,出现新建数据库窗口,如图2-9所示:图2-9输入数据库名称:Test,点击数据文件选项卡,如图2-10所示:图2-10在数据文件中,你可以设定数据文件的名称,所在目录以及文件的大小等信息。
完成后点击事务日志选项卡,如图2-11所示:图2-11事务日志中,你可以设定日志文件的名称,所在目录以及文件的大小等信息。
接受系统的缺省值,点击确定按钮,完成数据库的新建,如图2-12所示。
图2-123.在Test数据库上建立表:点击数据库Test前面的+号,打开数据库的各种属性,如图2-13所示:图2-13选中表的属性,单击鼠标右键,出现表的菜单,如图2-14所示:图2-14点击新建表按钮,出现新建表窗口,如图2-15所示:图2-15输入列名,数据类型,长度等信息,点击图标,出现选择表名窗口,如图2-16所示:图2-16输入表名,点击确定按钮,将新建的表存盘。
三、实验任务1.用数据库SQL Server 2000的服务管理器启动数据库服务;2.用数据库SQL Server 2000的企业管理器建立一个数据文件名为demodata、大小50M,日志文件名为demolog、大小25M的新数据库,该数据库名为Demo。
3.在数据库Demo上,建立如下所示的表customer:实验四SQL Server2000查询分析器一、实验目的SQL Server 2000的查询分析器是一种特别用于交互式执行SQL语句和脚本的极好的工具。
本次实验了解SQL Server 2000查询分析器的启动,熟悉如何在SQL Server 2000查询分析器中建表、插入记录、查询记录。
学会SQL Server 2000的查询分析器中建表、插入记录、查询记录。
二、实验内容1.启动数据库服务软件SQL Server 2000的查询分析器:在程序菜单中选择Microsoft SQL Server,如图3-1所示:图3-1再选中查询分析器,如图3-2所示:图3-2点击查询分析器后,出现连接到SQL Server窗口,如图3-3所示:图3-3点击按钮,出现选择服务器窗口,如图3-4所示。
图3-4选择本地服务(Local),点击确定按钮。
再点击连接到SQL Server窗口的确定按钮。
出现SQL查询分析器主界面,如图3-5所示。
图3-5选择查询菜单,点击更改数据库,如图3-6所示。
图3-6出现选择数据库窗口,如图3-7所示。
图3-7选择在上次实验中建立的数据库Test,点确定按钮。
2.在查询分析器中建立表:在查询分析器的查询窗口中输入SQL语句,如图3-8所示。
图3-8点击按钮,执行该SQL语句,在查询窗口下部出现一个输出窗口,如图3-9所示。
图3-9提示命令成功完成,或者报告出错信息。
3.查询分析器中向表添加数据:在查询分析器的查询窗口中输入SQL语句,如图3-10所示。
图3-10点击按钮,执行该SQL语句,在查询窗口下部出现一个输出窗口,如图3-11所示。
图3-111.从表中查询数据:在查询分析器的查询窗口中输入SQL语句,如图3-12所示。
图3-12点击按钮,执行该SQL语句,在查询窗口下部出现一个输出窗口,如图3-13所示。
图3-13三、实验任务1.打开数据库SQL Server 2000的查询分析器,用SQL语言建表2.用SQL语言向表student插入如下6条记录:3.练习查询语句,查找年龄大于等于20岁,成绩低于500分的记录。
实验五SQL语言的DDL一、实验目的SQL(Structured Query Language)语言是关系数据库的标准语言。
是一种介于关系代数与关系演算之间的结构化查询语言,其功能并不仅仅是查询,SQL语言是一个通用的、功能极强的关系数据库语言。
从本次实验开始,我们将详细的学习SQL的DDL(数据定义语言)、DML(数据操纵语言)、DCL(数据控制语言)。
本次实验了解DDL语言的CREATE、DROP、ALTER对表、索引、视图的操作,学会SQL Server 2000的查询分析器中用DDL语言进行对表、索引、视图的增加、删除和改动。