数据库实验 王珊演示教学
王珊数据库原理6
– 设计人员缺少用户的专业知识,不易理解用 户的真正需求,甚至误解用户的需求。
– 新的硬件、软件技术的出现也会使用户需求 发生变化。
需求分析的难点(续)
解决方法
– 设计人员必须采用有效的方法,与用户不断 深入地进行交流,才能逐步得以确定用户的 实际需求
6.2 需求分析
6.2.1 需求分析的任务
需求分析的重点(续)
处理要求
– 对处理功能的要求 – 对处理的响应时间的要求 – 对处理方式的要求(批处理 / 联机处理)
新系统的功能必须能够满足用户的信息要求、
处理要求、安全性与完整性要求。
三、需求分析的难点
确定用户最终需求的难点
– 用户缺少计算机知识,开始时无法确定计算 机究竟能为自己做什么,不能做什么,因此 无法一下子准确地表达自己的需求,他们所 提出的需求往往不断地变化。
其中学生管理子系统开发小组通过进行进一步的需求 调查,明确了该子系统的主要功能是进行学籍管理和 课程管理,包括学生报到、入学、毕业的管理,学生 上课情况的管理。通过详细的信息流程分析和数据收 集后,他们生成了该子系统的数据流图。
6.2 需求分析
6.2.1 需求分析的任务
6.2.2 需求分析的方法 6.2.3 数据字典
处理过程(续)
数据存储“学生登记表”可如下描述: 数据存储: 学生登记表 说明: 记录学生的基本情况 流入数据流:…… 流出数据流:…… 组成: …… 数据量: 每年3000张 存取方式: 随机存取
处理过程(续)
– 各个部门输入和使用什么数据
– 如何加工处理这些数据
– 输出什么信息
– 输出到什么部门
– 输出结果的格式是什么
调查与初步分析用户需求(续)
王珊数据库原理4
足不同程度要求的为不同范式。 范式的种类:
第一范式(1NF) 第二范式(2NF) 第三范式(3NF) BC范式(BCNF) 第四范式(4NF) 第五范式(5NF)
范式(续)
各种范式之间存在联系: 1NF 2 NF 3NF BCNF 4 NF 5 NF
解决方法:通过分解关系模式来消除其中不合适 的数据依赖。
数据依赖对关系模式的影响(续)
规范化理论正是用来改造关系模式,通
过分解关系模式来消除其中不合适的数
据依赖,以解决插入异常、删除异常、
更新异常和数据冗余问题。
5.1 数据依赖
5.1.1 关系模式中的数据依赖
5.1.2 数据依赖对关系模式的影响 5.1.3 有关概念
某一关系模式R为第n范式,可简记
为R∈nNF。
4.2 范式
4.2.1 第一范式(1NF) 4.2.2 第二范式(2NF) 4.2.3 第三范式(3NF) 4.2.4 BC范式(BCNF) 4.2.5 多值依赖与第四范式(4NF)
4.2.1 第一范式(1NF)
1NF的定义
定义5.6 如果一个关系模式R的所有属性都是 不可分的基本数据项,则R∈1NF。
二R(U)中,对于U的子集 X和Y,如果X→Y,但Y X,则称 X→Y是非平凡的函数依赖。若X→Y, 但Y X则称X→Y是平凡的函数依赖。
例:在关系SC(Sno, Cno, Grade)中, 非平凡函数依赖: (Sno, Cno) → Grade 平凡函数依赖: (Sno, Cno) → Sno (Sno, Cno) → Cno
数据依赖对关系模式的影响(续)
⒊ 插入异常(Insertion Anomalies) – 该插的数据插不进去 例,如果一个系刚成立,尚无学生,我们就无 法把这个系及其系主任的信息存入数据库。
6 数据库设计-数据库系统原理教程-王珊-清华大学出版社
– 在数据库系统运行过程中必须不断地对其进 行评价、调整与修改。
数据库设计的过程(续)
设计一个完善的数据库应用系统往往是 上述六个阶段的不断反复。
P184图6-1
第6章 数据库设计
6.1 数据库设计的步骤 6.2 需求分析 6.3 概念结构设计 6.4 逻辑结构设计 6.5 数据库的物理设计 6.6 数据库实施 6.7 数据库运行与维护
第6章 数据库设计
6.1 数据库设计的步骤 6.2 需求分析 6.3 概念结构设计 6.4 逻辑结构设计 6.5 数据库的物理设计 6.6 数据库实施 6.7 数据库运行与维护
第6章 数据库设计
6.1 数据库设计的步骤 6.2 需求分析 6.3 概念结构设计 6.4 逻辑结构设计 6.5 数据库的物理设计 6.6 数据库实施 6.7 数据库运行与维护
调查与初步分析用户需求(续)
⑶ 在熟悉业务活动的基础上,协助用户明确对 新系统的各种要求。调查重点之二。
– 信息要求 – 处理要求 – 完全性与完整性要求
调查与初步分析用户需求(续)
⑷ 对前面调查的结果进行初步分析 – 确定新系统的边界
• 确定哪些功能由计算机完成或将来准备让计算机 完成
• 确定哪些活动由人工完成 由计算机完成的功能就是新系统应该实现的功能。
6.2 需求分析
6.2.1 需求分析的任务 6.2.2 需求分析的方法 6.2.3 数需要与要 求
– 需求分析是设计数据库的起点 – 需求分析的结果是否准确地反映了用户的实
际要求,将直接影响到后面各个阶段的设计, 并影响到设计结果是否合理和实用
6.2 需求分析
在此基础上确定新系统的功能。新系统 必须充分考虑今后可能的扩充和改变, 不能仅仅按当前应用需求来设计数据库
数据库系统概论王珊第5版PPT第3章(3)
An Introduction to Database System
修改数据(续)
关系数据库管理系统在执行修改语句时会检查修
改操作是否破坏表上已定义的完整性规则
实体完整性 主码不允许修改 用户定义的完整性
NOT NULL约束
UNIQUE约束
值域约束
An Introduction to Database System
表3.8 逻辑运算符真值表
x
y
x AND y
x
OR
y
NOT
x
T
T T U U U F F
T
U F T U F T U
T
U F U U F F F
T
T T T U U T U
F
F F U U U T T
F
F
F
F
T
T表示TRUE,F表示FALSE,U表示UNKNOWN
An Introduction to Database System
UPDATE Student SET Sage= Sage+1;
An Introduction to Database System
3. 带子查询的修改语句
[例3.75] 将计算机科学系全体学生的成绩置零。 UPDATE SC SET Grade=0 WHERE Sno IN (SELETE Sno FROM Student WHERE Sdept= 'CS' );
3.4 数据查询
3.5 数据更新
3.6 空值的处理
3.7 视图
3.8 小结
An Introduction to Database System
3.5 数据更新
《 数据库系统概论》王珊(第五版)第4章 数据库安全性PPT演示课件
A
GRANT(续)
发出GRANT:
DBA 数据库对象创建者(即属主Owner) 拥有该权限的用户
按受权限的用户 一个或多个具体用户 PUBLIC(全体用户)
A
WITH GRANT OPTION子句
WITH GRANT OPTION子句:
为计算机系统建立和采取的各种安全保护措施,以保 护计算机系统中的硬件、软件及数据,防止其因偶然 或恶意的原因使系统遭到破坏,数据遭到更改或泄露 等。
A
计算机系统的三类安全性问题(续) 三类计算机系统安全性问题
技术安全类 管理安全类 政策法律类
A
4.1 计算机安全性概论
4.1.1 计算机系统的三类安全性问题 4.1.2 安全标准简介
4.2.1 用户标识与鉴别 4.2.2 存取控制 4.2.3 自主存取控制方法 4.2.4 授权与回收 4.2.5 数据库角色 4.2.6 强制存取控制方法
A
4.2.2 存取控制
存取控制机制组成
定义用户权限 合法权限检查
用户权限定义和合法权检查机制一起组成了 DBMS的安全子系统
A
WITH GRANT OPTION;
同样,U6还可以将此权限授予U7: [例7] GRANT INSERT ON TABLE SC TO U7; 但U7不能再传播此权限。
A
传播权限(续)
下表是执行了[例1]到[例7]的语句后,学生-课程数据库 中的用户权限定义表
授权用户名 DBA DBA DBA DBA DBA DBA DBA DBA DBA U5 U6
安全级别
A1
B3 B2 B1 C2 C1 D
数据库系统概论(第四版)王珊Part_4
读数据时间=2100/20=105秒
不同的执行策略,考虑I/O时间
中间结果大小 = 1000*10000 = 107 元组)
(1千万条
写中间结果时间 = 10000000/10/20 = 50000秒 ②б
读数据时间 = 50000秒 ③П
总时间 =105+50000+50000秒 = 100105秒 = 27.8小时
4.2.1 查询优化概述
■ 查询优化的必要性 ■ 查询优化极大地影响RDBMS的性 能。 ■ 查询优化的可能性 ■ 关系数据语言的级别很高 , 使DBMS 可以从关系表达式中分析查询语义。
由DBMS进行查询优化的好处
■ 用户不必考虑如何最好地表达查询 以获 得较好的效率 ■ 系统可以比用户程序的优化做得更 好 (1) 优化器可以从数据字典中获取许多统计 信息, 而用户程序则难以获得这些信息
关系系统的分类 (续)
表式系统 (最小)关系系统
关系完备的系统 全关系系统
数据结构
表 表
表
数据操作 完整性
选择 、投影、 连接
第四章 关系系统及其查询优化
4.1 关系系统 4.2 关系系统的查询优化 4.3 小结
4.2 关系系统的查询优化
4.2.1 查询优化概述 4.2.2 查询优化的必要性 4.2.3 查询优化的一般准则 4.2.4 关系代数等价变换规则 4.2.5 关系代数表达式的优化算法 4.2.6 优化的一般步骤
假设4: 连接方法: 基于数据块的嵌套循环法
查询优化的必要性(续)
执行策略1
Q1 = П Sname (бStudent.Sno=SC.Sno ∧o="2" (Student×SC) ① Student×SC
数据库系统概论(王珊第四版)-第七章
返回用户征求
意见直至满意
需
抽象
视
求
数据
图
分
设计
集
析
局部
成
视图
逻 辑 结 构 设 计
分E-R图
总E-R图
7.3.3 数据抽象与局部视图设计
一、数据抽象
1. 分类 定义某一类概念作为现实世界中一组对象的类型; 这些对象具有某些共同的特性和行为; 它抽象了对象值和型之间的“is member of”的语义; 在E-R模型中,实体型就是这种抽象.
SA方法把任何一个系统抽象为如下形式。
数据存储
信息要求
数据流
数据流
数据来源
处理
数据输出
处理要求
三、数据流图(DFD, Data Flow Diagram)
描述数据在系统中流动和变换的过程,表达了数据和处理 过程的关系;以图形的方式刻画数据从输入到输出的移动变换 过程; 数据流程分析的主要工具;系统分析人员与用户进行交流的 手段和系统设计的主要依据之一
二、局部视图设计
设计分E-R图的具体步骤:
1)选择局部应用
选择一个适当层次的数据流图,图中每一部分对应一个局 部应用.
2)逐一设计分E-R图
标定局部应用中的实体、实体的属性、标识实体的码,确 定实体之间的联系及其类型,并进行必要的调整。
课程管理局部应用分E-R图
在课程管理局部应用中主要涉及实体的属性: 学生:{姓名,学号,性别,年龄,所在系,年级,平均成 绩} 课程:{课程号,课程名,学分} 教师:{职工号,姓名,性别,职称} 教科书:{书号,书名,价钱} 教室:{教室编号,地址,容量}
7.1.3 数据库设计的基本步骤
一、数据库设计的准备工作
数据库系统概论王珊第5版PPT第2章
数据字典用于描述数据库中各种对象的属性,如数据表、数据列、数 据类型等。
02
数据模型
数据模型的概念和组成
概念
数据模型是用来抽象表示现实世界中 数据和数据间关系的一种工具,它为 数据组织、存储、检索和使用提供了 统一的方法和框架。
组成
数据模型通常包括数据结构、数据操 作和数据约束三个部分。
概念模型
数据完整性有助于防止错误的数据输入和输出,从而确保应用程序和用户 能够信任数据库中的数据。
数据完整性约束条件
实体完整性 域完整性 参照完整性
用户定义的完整性
确保数据库中的每条记录都是唯一的,通常通过主键约束来实 现。
限制数据列中的数据类型、格式和范围,通常通过数据类型、 约束和检查约束来实现。
维护表之间的关系,确保引用数据的准确性和一致性,通常通 过外键约束来实现。
数据组织方式
层次结构
数据按照树形结构进行组织,类似于文件系统的目录结构,适合 于表示具有层次关系的数据。
网状结构
数据之间存在复杂的链接关系,类似于早期的数据库系统中的记录 指针,适用于表示复杂的数据关系。
关系结构
数据以表格的形式进行组织,每个表格包含若干行和列,适用于表 示具有明确关系的数据。
数据字典
数据存储方式
01
02
03
磁盘存储
利用磁盘阵列技术,将数 据分散存储在多个磁盘中, 以提高数据存储的可靠性 和访问性能。
内存存储
将数据存储在内存中,实 现快速的数据读写访问, 适用于需要高性能的应用 场景。
分布式存储
将数据分散存储在多个节 点上,以提高数据存储的 可扩展性和容错性,适用 于大规模数据存储场景。
数据库系统概论王珊 第5版ppt第2章
数据库系统实验内容(王珊)
数据库系统实验内容(王珊)实验一:认识DBMS系统实验二:交互式SQL实验三:安全性实验四:完整性实验五:通过嵌入式SQL访问数据库实验六:使用PL/SQL编写存储过程访问数据库实验七:通过ODBC方式访问数据库实验八:通过JDBC方式访问数据库实验九:查询优化实验一:认识DBMS系统1 实验目的1.通过对某个商用数据库管理系统的使用,了解DBMS的工作原理和系统构架。
在此推荐国产金仓数据库管理系统KingbaseES,该系统已经带在本书后的光盘中。
你也可以从人大金仓公司的网站(/)上免费下载该系统。
2.熟悉对DBMS的操作3.搭建今后实验的平台2 实验平台2.1 操作系统:Windows 2000或者Windows XP注:使用Professional版的操作系统建议安装数据库管理系统的教学版,Server版的操作系统建议安装数据库管理系统的企业版。
2.2 数据库管理系统:选择安装数据库管理系统之前,请仔细看清硬件的配置要求,今后的实验环境以KingbaseES为例进行说明。
你也可以选择其他国产数据库管理系统,或国外的MS SQL Server, Oracle, DB 2等。
3 实验内容及要求3.1 安装和启动1.根据安装文件的说明安装数据库管理系统。
在安装过程中记录安装的选择,并且对所作的选择进行思考,为何要进行这样的配置,对今后运行数据库管理系统会有什么影响。
2.学会启动和停止数据库服务,思考可以用哪些方式来完成启动和停止。
3.初步了解KingbaseES的安全性,这里主要是用户的登录和服务器预定义角色。
可以尝试建立一个新的用户,赋予其数据库管理员的角色,今后的实验可以用该用户来创建数据库应用。
3.2 数据库系统的构架1.了解数据库系统的逻辑组件:它们主要是数据库对象,包括基本表、视图、触发器、存储过程、约束等。
今后将学习如何操作这些数据库对象。
2.了解数据库的物理组件:思考数据库物理存储的存储单位是什么,数据主要以什么方式存放,如何确定数据的存放位置。
数据库实验指导书++数据库系统概论(第四版)++王珊、萨师煊
数据库实验指导书++数据库系统概论(第四版)++王珊、萨师煊⽬录实验⼀熟悉POWER DESIGNER (2)实验⼆SQL SERVER 2000的安装与使⽤ (5)实验三创建数据库、表 (15)实验四SQL SERVER2000查询分析器 (27)实验五SQL语⾔的DDL (36)实验六SQL语⾔的DML初步 (38)实验七DML的数据查询 (40)实验⼋SQL语⾔综合练习 (44)实验九嵌⼊式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公司推出的关系型⽹络数据库管理系统,是⼀个逐步成长起来的⼤型数据库管理系统。
数据库系统概论(王珊第五版)数据库实验2
实验二:创建及管理数据库一、实验目的1. 熟悉在SQL Server 2008中创建及编辑数据库;2. 熟练掌握使用T-SQL 语句对数据库的管理方法;3. 掌握数据库模式的创建方法;二、实验学时2学时三、实验要求1.熟练使用Management Stuio界面方式创建及编辑数据库;2.熟练使用T-SQL 语句创建及编辑数据库;3.独立完成实验内容,并提交书面实验报告。
四、实验准备知识1.数据库相关属性1)逻辑名称:数据文件和日志文件名称2)文件类型:数据文件及日志文件3)文件组:各个数据文件所属的文件组名称4)初始大小:文件的最原始大小5)自动增长:文件按指定的大小增长,也可限制到最大容量。
6)路径:存放文件的物理目录7)文件名:显示数据文件和日志文件的物理名称2.默认数据库属性1)主数据文件为xx.mdf ,日志文件为xx_log.ldf;2)只有一个文件组Primary;3)主数据文件初始大小为3MB,增量为1MB;4)日志文件初始大小为1MB,增量为10%;5)主数据文件和日志文件都存放在C:\Program Files\Microsoft SQLServer\MSSQL10.MSSQLSERVER\MSSQL\DATA目录下,文件分别为xx.mdf 和xx_log.ldf 。
3.创建数据库命令CREATE DATABASE database_name /*指定数据库名*/[ON 子句] /*指定数据库文件和文件组属性[LOG ON 子句] /*指定日志文件属性*/4.修改数据库命令Alter database database_name{add file <filespec>[,…n] [to filegroup filegroupname]|ad d log file <filespec>[,…n]|remove file logical_file_name [with delete]|modify file <filespec>5.创建模式(构架)的命令。
数据库系统概论(王珊第五版)数据库实验1
实验1 SQL SERVER 2008环境一、实验目的1.掌握服务管理器的启动和停止方法;2.掌握SQL Server Management Studio对象资源管理器的使用方法;3.掌握注册服务器的步骤。
4.掌握E-R图在计算机中的画法。
二、实验学时2学时三、实验要求1.了解SQL Server 2008的安装过程。
2.熟练掌握SQL Server2008数据库服务器的启动方法。
3.熟练掌握SQL Server2008数据库服务器的登录方法和注册方法。
4.掌握E-R图的画法,学会使用Visio画出标准的E-R图。
5.独立完成实验内容,并提交书面实验报告。
四、实验内容1.了解并熟悉SQL Server 2008的安装方法。
2.登录SQL Server 2008服务器,主要包括启动、暂停、停止和重新启动服务器,登录SQL Server Management Studio等操作;3. 掌握SQL Server Management Studio对象资源管理器的使用方法;4.注册SQL Server 2008服务器。
5. 有一个图书管理系统需要构建E-R图,要求如下:(1)可随时查询书库中现有书籍的品种、数量与存放位置。
所有各类书籍均可由书号唯一标识。
(2)可随时查询书籍借还情况,包括借书人单位、姓名、借书证号、借书日期和还书日期。
约定:任何人可借多种书,任何一种书可为多个人所借,借书证号具有唯一性。
(3)当需要时,可通过数据库中保存的出版社的电报编号、电话、邮编及地址等信息向相应出版社增购有关书籍。
约定,一个出版社可出版多种书籍,同一本书仅为一个出版社出版,出版社名具有唯一性。
将有关实体型及其联系画出E-R模型图画在实验报告册中。
五、实验步骤1. 了解并熟悉SQL Server 2008的安装方法(参见给定幻灯片演示文稿)。
2.启动、暂停、停止SQLSERVER服务方法1:利用windows services 启动服务在windows的开始菜单中,依次选择“控制面板/管理工具/服务”,打开windows服务窗口,找到SQL Server(MSSQLSERVER)并双击此服务,打开属性对话框,此时可查看服务的状态。
数据库系统概论(王珊第五版)第十讲
Select student.sno,sname,cno,grade From student right join sc On (student.sno = sc.sno)
精品课件
4. 多表连接
❖ 多表连接:两个以上的表进行连接
[例3.54]查询每个学生的学号、姓名、选修的课程名及成 绩
精品课件
练习: 1、查询选修课程号为2的学生姓名; 2、查询没有选修课程的学生的基本情况; 3、查询至少有一个成绩在80分以上的学生的基本情况; 4、查询没有选修“数据库”课程的学生的基本情况。
精品课件
1、查询选修课程号为2的学生姓名;
SELECT sname FROM Student,sc WHERE Student.Sno = SC.Sno and o=‘2’
SELECT Sname FROM Student WHERE Sno IN
(SELECT Sno FROM SC WHERE Cno= '2')
步骤:先找出2号课程对应的学号,再通过学号找学生姓名。
精品课件
2、查询没有选修课程的学生的基本情况;
SELECT * FROM Student WHERE Sno not in
精品课件
1.内部连接
❖内部连接INNER JOIN 内部连接是使用比较运算符比较要连接列中的值的 连接,下面通过实例说明其使用。 例:从student和sc表中查询每个学生的各门选修课 成绩信息,要求返回的结果中包含学生的学号、姓 名、性别、选修课程序号及成绩。
Select a.sno,sname,ssex,cno,grade From student a inner join sc b On a.sno=b.sno
数据库系统概论第四版王珊萨师煊chPPT演示文稿
13.3.1 数据模型的发展
❖ 1. 对传统的关系模型 (1NF) 进行扩充,引入了少数构造器, 称为复杂数据模型
一种是偏重于结构的扩充 一种是侧重于语义的扩充
❖ 2. 增加全新的数据构造器和数据处理原语,以表达复杂的 结构和丰富的语义
❖ 3. 面向对象的数据模型 ❖ 4. XML数据模型
13.3 数据库系统发展的特点
❖ 空间数据查询语言是为了正确表达以上查询请求
空间数据库管理系统
❖ 功能
提供对空间数据和空间关系的定义和描述 提供空间数据查询语言,实现对空间数据的高效查询和操
作 提供对空间数据的存储和组织 提供对空间数据的直观显示等
第十三章 数据库技术新发展
13.1 数据库技术发展概述 13.2 数据库发展的3个阶段 13.3 数据库系统发展的特点 13.4 数据库技术发展趋势 13.5 小结
❖ 数据库技术是计算机科学技术中发展最快的领域 之一,也是应用最广的技术之一
第一代的网状、层次数据库系统 第二代的关系数据库系统 第三代数据库系统--数据库大家族
数据库技术发展概述(续)
❖ 下图通过一个三维空间的视图从数据模型、新技术内容、应用领域3个方面, 描述了数据库系统的发展、特点和相互关系
❖ 目标
提供对紧急情况及时反应的能力
❖ 方法
嵌入ECA,即事件-条件-动作规则
主动数据库(续)
❖ 为支持ECA规则,主动数据库的研究集中于解决 以下问题:
1. 主动数据库的数据模型和知识模型 2. 执行模型 3. 条件检测 4. 事务调度 5. 体系结构 6. 系统效率
13.3 数据库系统发展的特点
并行计算技术利用多处理机并行处理产生的规模效益来提高系统 的整体性能,为数据库系统提供了一个良好的硬件平台
数据库实验-王珊
实验内容和时间安排1 时间安排2 实验内容实验0 SQL语句练习[实验时数] 2 学时该实验以SQL Server 2000系统自带的 pubs 数据库为例,以一个图书出版公司为模型。
(1)该系统中数据库基本表如下:Authors:'[0-9][0-9][0-9]-[0-9][0-9]-[0-9][0-9][0-9][0-9]')。
2 zip CHECK 约束定义为 (zip LIKE '[0-9][0-9][0-9][0-9][0-9]')。
============================discountsEmployee(emp_id LIKE '[A-Z][A-Z][A-Z][1-9][0-9][0-9][0-9][0-9][FM]') OR (emp_id LIKE '[A-Z]-[A-Z][1-9][0-9][0-9][0-9][0-9][FM]')。
============================Jobs(2) max_lvl CHECK 约束定义为 (max_lvl <= 250)。
============================pub_info============================Publishers(pub_id = '1756' OR (pub_id = '1622' OR (pub_id = '0877' OR (pub_id = '0736' OR (pub_id = '1389')))) OR (pub_id LIKE '99[0-9][0-0]')。
============================royschedSalestitlesStorestitleauthor(2)练习内容目的1:1.加深对表间关系的理解。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验内容和时间安排1 时间安排2 实验内容实验0 SQL语句练习[实验时数] 2 学时该实验以SQL Server 2000系统自带的pubs 数据库为例,以一个图书出版公司为模型。
(1)该系统中数据库基本表如下:Authors:1 au_id CHECK 约束定义为(au_id LIKE '[0-9][0-9][0-9]-[0-9][0-9]-[0-9][0-9][0-9][0-9]')。
2 zip CHECK 约束定义为(zip LIKE '[0-9][0-9][0-9][0-9][0-9]')。
============================discountsEmployee(emp_id LIKE '[A-Z][A-Z][A-Z][1-9][0-9][0-9][0-9][0-9][FM]') OR(emp_id LIKE '[A-Z]-[A-Z][1-9][0-9][0-9][0-9][0-9][FM]')。
============================Jobs(2) max_lvl CHECK 约束定义为(max_lvl <= 250)。
============================pub_infoPublishers(pub_id = '1756' OR (pub_id = '1622' OR (pub_id = '0877' OR (pub_id = '0736' OR (pub_id = '1389')))) OR (pub_id LIKE '99[0-9][0-0]')。
============================royschedSalestitlesStorestitleauthor(2)练习内容目的1:1.加深对表间关系的理解。
2.理解数据库中数据的查询方法和应用。
3.学会各种查询的异同及相互之间的转换方法。
内容1:1.查询所有作者的作者号、姓名信息2.查询所有作者的姓名、作者号信息,并在每个作者的作者号前面显示字符串“身份证号:”,表明显示的信息是身份证信息3.查询在CA州的作者姓名和城市4.查询出版日期在2002.1.1-2002.12.31之间的书名和出版日期5.查询每个出版社出版的书6.查询某店销售某书的数量7.查询有销售记录的所有书信息,包括书的编号、书名、类型和价格8.查询已销售书的信息9.显示所有的书名(无销售记录的书也包括在内)10.查询已销售书的信息(书号、书名、作者等)11.查询所有出版商业(business)书籍的出版社的名称目的2:1.理解数据库中数据的其他查询方法和应用;2.学会各种查询要求的实现。
内容2:在实验1的基础上,练习查询语句的使用,包括计算列、求和、最大、最小值、各类选择条件、字符匹配、分组和排序,体会各种查询的执行过程,为简单综合应用打下良好的基础。
1.查询书名以T开头或者出版社号为0877,而且价格大于16的书的信息。
2.按照类型的升序和价格的降序(在类型相同时)显示书的信息(书名、作者、出版社、类型、价格)3.查询销售量大于30的书名及销售数量4.查询在2002.1.1到2002.10.31间,每本书的销售总额5.查询所有作者的所在城市和州名,要求没有重复信息6.计算多少种书已被订价7.查询每本书的书名、作者及它的售书总量8.计算所有书的平均价格9.查询价格最高的书的书名、作者及价格目的3:1.加深对数据库相关性质的理解;2.各种约束性理解;3.学会数据库中数据的更新的方法。
内容3:1.参照以上各表给出的主键、外键设置的设置要求,在自己创建的表中进行相应的设置。
2.向authors表中插入一行作者信息(具体值自定)3.数量超过100的商店增加10%的折扣4.删除2001.10.3的订单5.删除1中所建立的索引6.建立CA州作者所著书的视图(包括作者号、姓名、所在州、书名、价格、出版日期)7.建立付款方式是现金(cash)的订单视图8.建立CA州的所有商店的视图实验一数据定义和数据更新[实验目的]1.熟悉SQL Server中建立数据库、数据表以及连接数据库的操作;2.掌握SQL Server中查询分析器的工作环境,以及在其中使用SQL的基本操作。
[实验时数] 2 学时[实验内容]1.创建表、确定表的主码和约束条件,为主码创建索引。
2.查看和修改表结构。
3.熟悉SQL Server企业管理器和查询分析器工具的使用方法[实验步骤]1.基本操作实验●在企业管理器中查看已经建立的数据库的属性。
●通过企业管理器,在已有的数据库中建立图书、读者和借阅3个表,其结构为:➢图书(书号,类别,出版社,作者,书名,定价,作者);➢读者(编号,姓名,单位,性别,电话);➢借阅(书号,读者编号,借阅日期)。
要求为属性选择合适的数据类型,定义每个表的主码,是否允许空值和默认值等列级数据约束。
●在企业管理器中建立图书、读者和借阅3个表的表级约束:每个表的主码约束;借阅表与图书表间、借阅表与读者表之间的外码约束,要求按语义先确定外码约束表达式,再通过操作予以实现;实现借阅表的书号和读者编号的惟一性约束;实现读者性别只能是“男”或“女”的Check(检查)约束。
2.提高操作实验●用SQL建立学生—课程库操作,在SQL Server企业管理器中实现。
表结构为:➢学生(学号,姓名,年龄,性别,所在系);➢课程(课程号,课程名,先行课);➢选课(学号,课程号,成绩)。
要求:➢建表和建立表间联系。
➢选择合适的数据类型。
➢定义必要的索引、列级约束和表级约束。
●将设计的数据库应用系统中的数据库、库中的表、索引和约束用Transact-SQL表达,并通过企业管理器或查询分析器实现建库、建表、建立表间联系和建立必要的索引、列级约束和表级约束的操作。
[实验方法]1.创建数据库(因为各个用户已经建立以自己学号为名称的数据库,该步可以省略。
以下的数据库一律指该数据库,用户不必再次重复创建。
)(1)使用企业管理器创建数据库的步骤1)进入SQL Server 2000企业管理器。
2)选中需要在其上创建数据库的服务器,单击前面的“+”号,使其展示为树形目录。
3)选中“数据库”文件夹,单击右键,选择“新建数据库”,如图5- 1所示。
随后在数据库属性对话框的常规页面中,输人数据库名,选择SQL服务器,如图5-2所示。
图5- 1在数据库的弹出菜单中选择新建数据库图5- 2 数据库属性对话框数据库属性对话框中有3个页面:常规页面、数据文件页面和事务日志页面。
数据文件页面和事务日志页面主要用来定义数据库的数据文件和日志文件的属性。
4)选择数据文件页面,输入图书----读者数据库的数据文件属性,包括文件名、存放位置和文件属性,如图5- 错误!未定义书签。
所示;再选择事务日志页面,输人数据库的日志文件属性,包括文件名、存放位置、大小和文件属性,如图5-4所示。
在选择文件位置时,可以单击位于“位置”列的“…”按键,在调出的文件选择器中进行位置选择。
5)单击[确定]按钮,关闭对话框。
在企业管理器窗口中出现“图书----读者”数据库标志,这表明建库工作已经完成。
(2)文件属性参数说明文件属性栏设在页面的下部,它包括下列选项:图5- 错误!未定义书签。
数据库属性对话框中的数据文件页面图5- 错误!未定义书签。
数据库属性对话框中的事务日志页面1)文件自动增长复选框:选中后允许文件放满数据时自动增长。
2)文件增长单选框:设置允许文件自动增长时,每次文件增长的大小。
其中,选“按兆字节”项为设置文件增长为固定的大小,单位是MB;选“按百分比”项为文件按指定比例数增长,单位是%。
3)最大文件大小单选框:设置当允许文件扩展时,数据文件能够增长的最大值。
选“文件增长不受限制”项可使文件无限增长,直到用完磁盘空间;选“将文件增长限制为”项时,要设置文件最多达到的固定值。
2.查看和修改数据库属性参数已经建好的数据库,有时还需要对它的属性参数进行查看和修改。
下面我们分两步介绍:先介绍查看和修改数据库属性的步骤,再介绍数据库有关的参数及其含义。
(1)查看和修改数据库属性的步骤1)启动企业管理器,使数据库所在的服务器展开为树形目录。
2)选中数据库文件夹,使之展开;用鼠标右键单击指定的数据库标识,在弹出的菜单中选择“属性”项,如图5- 5所示。
出现数据库属性对话框,如图5-6所示。
图5- 错误!未定义书签。
在企业管理器中选择数据库的“属性”项图5- 错误!未定义书签。
数据库属性对话框中的选项页面从该对话框中可以看出,它由6个选项卡构成,与图5-2不同的是增加了文件组、选项和权限页面。
其中:文件组页面用于设置数据库的文件组,其概念在前面已经介绍过;权限页面用来设置用户对该数据库的访问权限,有关选项页面内容在下面介绍。
3)在选项卡中查看或修改相应的内容,单击[确定]按钮关闭对话框。
(2)选项页面中的数据库属性参数“选项”页面如图5-6所示。
“选项”页面分访问、故障还原、设置和兼容性4个栏目。
1)访问栏目。
访问栏用来设置数据库的操作许可。
限制访问复选框:选择后,限制用户访问数据库。
db owner,dbcreater或sysadmin成员:只能由数据库拥有者(创建者)使用数据库。
单用户:在同一时刻是否只允许一个用户使用该数据库。
只读:该数据库是否是只读的。
2)故障还原栏目。
设置故障还原模型。
3)设置栏目。
该栏目用来设置数据库在进行数据操作时的行为特征,它包括8个复选框,其含义比较容易理解。
3.删除数据库对于不需要的数据库,可以通过下面的方法删除:1)用鼠标右键单击要删除的数据库,在出现的弹出菜单中选择删除项。
2)在弹出的确认删除对话框中,单击[确认]按钮。
4.新建表在SQL Server 2000的数据库中,文件夹是按数据库对象的类型建立的,文件夹名是该数据库对象名。
当在企业管理器中选择服务器和数据库文件夹,并打开已定义好的数据库后,会发现它自动设置了关系图、表、视图、存储过程、用户、角色、规则、默认等文件夹。
要建立“图书”表,先选中数据库中的表文件夹,单击鼠标右健。
在弹出的菜单中选择新建表,如图5- 错误!未定义书签。
所示。
随后的输入表结构对话框如图5-8所示。
图5- 错误!未定义书签。
数据库中的表文件夹的弹出菜单图5- 错误!未定义书签。
输入表结构对话框输入表结构对话框是一张表,它的列属性有列名、数据类型、长度和是否允许空4项。
用户把新建表的结构填入对话框的表中,表中的每一行定义新建表(图书)的一列,每一列定义新建表的一个列属性。