版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、课程内容,第一部分 涉及1、9章 重点介绍 数据库相关基本概念 关系数据库设计理论及实践,课程内容,第二部分 涉及2-8章 重点介绍 数据库、表、联系在Sql server中的实现 管理视图、索引、存储过程、触发器、游标 查询 数据库安全 用户权限 数据完整性 事务处理 恢复及备份,课程内容,第三部分 涉及10章及其他资料 简要介绍 Visual Basic常用控件 ADO.NET数据库操作 图书管理系统的开发,教学安排,出于课程内容的相对独立性及项目开发流程的考虑 第一部分,先行学习 第二部分,依次学习 第三部分,穿插介绍,自学为主 要求在常用.net windows控件掌握的基础上独立完成
2、“图书管理系统”的设计,课堂要求,在学习过程中遇到的疑问提倡自行解决 学习力的锻炼 辅导效率的改善 课后交流(email:) 作业 公共 单独或小组 疑问,第一部分基本概念,数据(Data) 数据是描述事物的符号记录,在数据库范畴数据特指数据库中存储的基本对象。 数据库(DataBase ,DB) 狭义:存储数据的仓库。 广义:长期存储在计算机内、有组织的、可共享的数据集合,以及对数据集合实施管理的一组软件。,第一部分基本概念,数据库管理系统(DataBase Management System, DBMS) 为用户或应用程序提供访问数据库方法的管理软件,具有数据库建立和维护功能、数据定义功能
3、、数据操纵功能、数据库安全运行保障功能。 常见的DBMS ACCESS,FOXPRO, MYSQL等小型DBMS软件 ORACLE,SQL SERVER等大型DBMS软件,第一部分基本概念,数据库系统(DataBase System,DS) 采用数据库技术,以某一应用领域为背景的计算机应用系统。 构成 数据库技术的发展(自学),第一部分数据库引入的目的,数据管理、处理的要求无处不在。(data) 数据存储、操纵及安全性管理易于实现、效率更高。(dbms) 数据层与业务层的分离,便于应用程序的开发。(dbs),第一部分BS模式DBS实例,用户在IE浏览器(browser)中输入“淘宝”网址,向淘
4、宝网web服务器提交页面申请,并返回显示淘宝主页,第一部分BS模式DBS实例,用户“注册”即是将用户信息提交并保存在“淘宝”数据库服务器中的某一个数据库中。 用户“登录”即是将用户提交的信息与数据库中的信息比较,验证用户身份是否合法。,第一部分BS模式DBS实例,“搜索”即根据用户键入的关键字在数据库中进行“查询”。查询是数据库技术的重点,不仅支持上图中的“简单查询”,还可以实现更复杂的查询,如下图。,第一部分BS模式DBS实例,注:系统支持的查询越复杂说明数据库中记录的信息越丰富。,第一部分BS模式DBS实例,用户购物及支付环节势必与“商品库存清单”、“购物车清单”、“出库清单”等单据关联。
5、事实上,这里所说的“单据”通常对应与数据库中的“表”。,第一部分BS模式,B/S结构,即Browser/Server(浏览器/服务器)结构,是随着Internet技术的兴起,对C/S结构的一种变化或者改进的结构。在这种结构下,用户界面完全通过WWW浏览器实现,少量的事务逻辑在前端实现,主要事务逻辑在服务器端实现,形成所谓3-tier结构。,第一部分CS模式,C/S结构,即Client/Server (客户端/服务器)结构。在这种结构下,用户界面及主要事务逻辑在前端实现,后台服务器主要负责共享数据的存储。,第一部分CS模式DBS实例,第一部分CS模式DBS实例,本课程要求大家完成的“图书馆管理系
6、统”建议采用C/S架构。因为B/S架构开发需要掌握更多的开发技术,如需掌握数据库、HTML、CSS、javascript、ASP/JSP,课程三部分之间的关系,第一部分要分析解决一个特定应用系统的数据要求及数据的组织方式。 第二部分要解决数据在Sql Server中存储及简单操纵。 第三部分要实现客户端软件的用户界面、Sql Server的连接及调用Sql Server提供的操纵功能。如果应用系统相对复杂的话,还需要由编程语言实现。,数据库设计,数据模型 关系数据模型 数据视图 数据模式 数据库规范化理论 数据库系统设计步骤 图书管理系统数据库设计,什么是数据模型,数据模型是对现实世界中各种事
7、物或实体特征的数字化模拟和抽象,用以表示现实世界中的实体及实体之间的联系,使之能存放到计算机中,并通过计算机软件进行处理。 对事物的数据描述通常包括静态的属性描述和动态的行为描述。静态属性描述包括数据结构和数据约束;动态特性描述包括对静态属性数据的操作方法。,数据模型的分类,概念数据模型 是描述实体及其关系的语义(信息、用户对数据的理解)模型。 不关心信息在计算机内的表示。 利用实体、联系和约束描述现实世界的静态、动态和时态特征。 是现实世界的第一层抽象 是用户和数据库设计人员进行交流的工具 经常使用的概念数据模型有: 数据流图 数据字典 E-R图,数据模型的分类,逻辑数据模型 是直接面向计算
8、机系统和数据库管理系统的数据模型,很少考虑数据的语义,关心的是为提高提高数据存取和检索速度的物理结构。 是现实世界的第二层次的抽象。 主要包括: 层次数据模型 网状数据模型 关系数据模型,关系数据模型,关系模型:由若干关系模式组成的集合。 关系模式: 对一个关系的结构描述。每个描述包括关系名、属性等。属性的描述有属性名、属性类型、属性值域和约束等。 关系:一个关系就是一张二维表,每张表有一个表名,表中的内容是对应关系模式在某个时刻的值。 元组:表中的一行称为一个元组。 属性):表中的一个列称为关系的一个属性,即元组的一个数据项。属性有属性名、属性类型、属性值域和属性值之分。 属性域:属性的取值
9、范围。 主码:表中的一个属性或几个属性的组合,其值能唯一地标识表中一个元组。 外键:在一个关系中含有的与另一个关系的关键字相对应的属性组称为该关系的外部关键字。外部关键字取空值或为外部表中对应的关键字值。,数据视图,不同的用户从不同的角度观察数据库中的数据,就会得到不同的结果即数据视图。 如果同时观察全部数据记录,就得到全局数据视图。 在计算机系统内的硬盘上存储的学生数据是数据的物理视图。 因此,数据视图可分为三个层次: 外部层、局部视图层、用户视图层 概念层、全局视图层 内部层、物理视图层,数据模式,在数据库中,对数据(实体)的具体描述称为数据模式。 与三层数据视图相对应,数据模式也分为三个
10、层次: 外模式:对数据库局部逻辑结构的描述。例如,读一个学生的姓名、学号和班级三项数据,实际读出的是记录的逻辑表示,而不是在计算机磁盘上存储的物理数据表示。 概念模式:对数据库全局逻辑结构的描述,概念模式不牵扯到数据的物理存储结构和访问技术等细节技术。它是外模式和内模式之间的中间环节和隔离层,是保证数据独立性的关键部分。 内模式:对数据库数据物理存储结构内容的描述。它定义所有的数据存储和访问控制方面的细节,包括记录类型、文件组织方式、索引组织方式等,由DBMS完成概念模式和内模式之间的映射关系。 注:数据库设计的过程就是综合外模式, 产生概念模式,根据使用的DBMS产生物理模式,再由概念模式导
11、出用户视图。,数据库规范化理论,关系模式的形式化定义 对某一具体的问题,应该如何构造一个适合于它的数据模式,即应该构造几个关系模式,每个关系由哪些属性组成等。这是数据库(逻辑)设计的问题。关系模式的形式化表示为:R(U,F)或R(U)。其中, R:关系名;U:关系R的属性名集合。F:属性集合U上的一组数据依赖集合。,数据库规范化理论,为什么要规范化数据模式,供货商表,其关系模式为:供应商(供应商名称,供应商地址,供应商电话,供货名称,供货单价)关键字(供应商名称,供货名称),数据冗余 供应商名称、供应商地址等对每种供货名称都要重复输入。 更新异常 更新每个供应商地址时,要注意修改多条记录。 插
12、入异常 目前没有供货的供应商的信息无法保存。 删除异常 如果一个供应商供应的货物被删除,该供应商的名字、供应商的地址和电话也被丢失。,数据库规范化理论,函数依赖 设关系模式R(U),属性集合U=A1,A2,An,X,Y为属性集合U的子集,如果对于关系模式R(U)的任一可能的关系r,r中的任意两个元组u、v,若有uX=vX,就有uY=vY,则称X函数决定Y,或称Y函数依赖于X。用符号XY表示。其中X为决定因素,Y为被决定因素。 注: 函数依赖是语义范畴概念。 设有学生关系模式R(SNO, SNAME, SSEX),其函数依赖有SNO SNAME,SNO SSEX。,数据库规范化理论,几种特定的函
13、数依赖 非平凡函数依赖 平凡函数依赖 完全函数依赖 部分函数依赖 传递函数依赖,数据库规范化理论,第一范式(1NF)第一范式规定关系的每一个分量必须是一个不可分的数据项。,数据库规范化理论,第二范式(2NF)如果关系模式R满足第一范式,且它的任何一个非主属性都完全函数依赖于任一个候选码,则R满足第二范式,即消除部分函数依赖。 设有关系模式:R(Sno, Cno, title, Tname, Rno, marks), 分别为学号,课程号,课程名,教师名,教室号,成绩。,数据库规范化理论,为了消除部分函数依赖,将R关系模式分解为RE和COURSE两个关系模式:RE(Sno, Cno, MARKS)
14、 函数依赖是(Sno, Cno) MARKSCOURSE(Cno, title,Tname, Rno) 函数依赖是Cnotitle CnoTname Tname Rno 注:COURSE关系仍然存在弊端。如新来的教师,还没有分配授课之前,教师的姓名及教室编号都不能加到关系中;如果要修改某个教师的教室编号,必须修改与教师授课相对应的各元组中的教室编号,因为一位教师可能会教多门课。,数据库规范化理论,第三范式(3NF) 如果关系模式R满足 2NF,并且它的任何一个非主属性都不传递依赖于任何候选码,则称R是第三范式 (3NF),即消除传递依赖。 如COURSE(Cno, title,Tname, R
15、no),存在非主属性Rno对码的传递依赖:CnoTname, Tname Rno 将COURSE分解为:COURSE1(Cno, title, Tname) LECTURE(Tname, Rno) 至此,关系模式R被分解一组关系模式:RE(Sno, Cno, marks)COURSE1 (Cno, title, Tname) LECTURE (Tname, Rno),数据库规范化理论,BCNF范式 要求每一个决定因素必为候选码。 多值依赖和第四范式 注:如果关系模式被不断分解至3NF后,仍存在多种弊端时,考虑采用BCNF及4NF规范。,数据库规范化理论,模式分解 规范化过程中将一个关系模式分解
16、为若干个关系模式,应该保证分解后产生的模式和原来的模式等价。常用的等价标准有要求: 具有无损连接性的; 分解是保持函数依赖的; 分解既要具有无损连接又要保持函数依赖,数据库规范化理论,设关系模式S(SNO,CLASSNO,DEPTNO)在某一时刻的关系r为:,分解方案1:S11(SNO,DEPTNO) S12(CLASSNO,DEPTNO),数据库规范化理论,S11和S12自然连接为:,信息与原表不符合,不满足无损性,数据库规范化理论,分解方案2:S21(SNO,CLASSNO),S22(SNO,DEPTNO),满足无损性,数据库规范化理论,分解2中,假设学生S3从C2班转到C3班,于是我们需
17、要在r21中将元组S3C2修改为S3C3,同时在r22中将元组S3D2修改为S3D1。如果这两个修改没有同时完成,数据库中就会存在不一致信息。这是因为分解得到的两个关系模式不是互相独立造成的(未满足保持函数依赖性)。F中的函数依赖CLASSNODEPTNO既没有投影到关系模式R22中,而是跨在两个关系模式上。 模式分解中通常要求即满足无损性又满足保持函数依赖性。,数据库系统设计过程,按照规范化设计方法,从数据库应用系统设计和开发的全过程来考虑,可以细分为七个阶段: 规划 需求分析 概念结构设计 逻辑结构设计 物理结构设计 实施及运行维护,数据库系统设计过程,应用规划阶段 进行系统的必要性和可行
18、性分析 确定系统的范围 确定开发所需的资源(人员、硬件和软件) 估算软件开发的成本 确定项目进度。,需求分析任务,需求分析的任务是通过详细调查现实世界要处理的对象(组织、部门、企业等),充分了解原系统(手工系统或计算机系统)工作概况,明确用户的各种需求,然后在此基础上确定新系统的功能。调查的重点是数据和处理,通过调查、分析,获得用户对数据库的如下要求:(1) 信息要求。指用户需要从数据库中获得信息的内容与性质。由信息要求可以导出数据要求,即在数据库中需要存储哪些数据。 (2) 处理要求。指用户要完成什么处理功能,对处理的响应时间有什么要求,处理方式是批处理还是联机处理。(3) 安全性与完整性要
19、求。,软件需求分析方法和工具,数据流图(DFD) 是从“数据”和“对数据的加工”两方面表达数据处理系统工作过程的一种图形表示法。 通常采用自顶向下的逐步细化分层的数据流图对待开发系统进行描述。 DFD有四种基本成分 数据流用箭头表示 加工用圆圈表示 文件或数据库用双线段表示 数据流的源点或终点用方框表示,软件需求分析方法和工具,数据流图示例,软件需求分析方法和工具,数据字典的作用 因为DFD只表示出系统由哪几部分组成和各部分之间的关系,并没有说明各个成分(数据流,加工等)的含义。因此,对于复杂的系统仅有DFD往往还不足以描述用户的需求,必须通过数据字典详细描述各类数据实体对象。,软件需求分析方
20、法和工具,数据字典的组成 数据项 数据项是不可再分的数据单位。 数据项描述=数据项名,数据项含义说明,别名,数据类型,长度,取值范围,取值含义,与其他数据项的逻辑关系,数据项之间的联系 数据结构 数据结构反映了数据之间的组合关系。一个数据结构可以由若干个数据项组成,也可以由若干个数据结构组成,或由若干个数据项和数据结构混合组成。 数据结构描述=数据结构名,含义说明,组成:数据项或数据结构,软件需求分析方法和工具,数据字典的组成 数据流 数据流是数据结构在系统内传输的路径。 数据流描述=数据流名,说明,数据流来源,数据流去向,组成:数据结构,平均流量,高峰期流量 数据存储 数据存储是对数据结构的
21、保存,也是数据流的来源和去向之一。它可以是手工文档或手工凭单,也可以是计算机文档。 数据存储描述=数据存储名,说明,编号,输入的数据流,输出的数据流,组成:数据结构,数据量,存取频度,存取方式,软件需求分析方法和工具,数据字典的组成 处理过程 处理过程是系统某业务的具体处理逻辑 处理过程描述=处理过程名,说明,输入:数据流,输出:数据流,处理:简要说明,软件需求分析方法和工具,软件需求分析方法和工具,概念结构设计E-R图,概念结构设计要求对需求分析阶段收集到的数据进行分析,形成实体、实体的属性,标识实体的码,确定实体之间的联系类型(1:1,1:N,M:N),设计E-R图。 E-R方法进行概念设
22、计的步骤 局部E-R模式设计 全局E-R模式设计 全局E-R模式的优化和评审。,概念结构设计E-R图,局部E-R模式设计,注:由于高层的数据流图只能反映系统的概貌,而中层的数据流图能较好的反映系统中各局部应用的子系统组成,因此人们往往以中层数据流图作为设计分E-R图的依据。,概念结构设计E-R图,全局E-R模式设计,命名冲突 同名异义 异名同义 属性冲突 属性域冲突 属性取值单位冲突 结构冲突 同一对象在一个实体中可能作为实体,在另一个视图中可能作为属性或联系 同一实体在不同的分E-R图中所包含的属性个数和属性排列次序不完全相同 不同的视图可能有不同的约束,概念结构设计E-R图,优化评审消除冗
23、余 冗余的数据是指可由基本数据导出的数据,冗余的联系是指可由其它联系导出的联系。,注:Q3可由Q1、Q2导出,所以产品和材料之间的使用联系是冗余联系。,逻辑结构设计,逻辑结构设计,E-R模型转换为关系模型 实体和实体属性的转换 实体转换为关系模式 实体的属性转换为关系的属性 实体的码转换为关系模式的候选码 实体之间的联系和联系属性的转换 1:1联系的转换 1:n联系的转换 m:n联系的转换,1:1联系的转换,转换为一个独立的关系模式,则与该联系相连的实体的码以及联系本身的属性均转换为关系的属性,每个实体的码均是该关系的候选码 与任意一端实体对应的关系模式合并,则需要在该关系模式的属性中加入另一
24、关系模式的码和联系本身的属性,1:n联系的转换,转换为一个独立的关系模式,则与该联系相连的各实体的码以及联系本身的属性均转换为新关系的属性,而新关系的码为n端实体的码 也可以与n端对应的关系模式合并, 在n端的关系中增加1端的关键字列,m:n联系的转换,m:n联系必须转换为一个新关系模式,与该联系相连的各实体的码以及联系本身的属性均转为新关系的属性,而新关系的码是各实体码的组合。,物理结构设计,数据库在物理设备上的存储结构与存取方法称为数据库的物理结构,它依赖于给定的计算机系统和DBMS。 这里不做过多介绍,在Sql Server部分稍作讨论。,图书管理系统功能要求,图书管理系统DFD,图书管
25、理系统DFD,图书管理系统DFD,图书管理系统DFD,图书管理系统DFD,图书管理系统分E-R图,图书管理系统合并E-R图,类似的,类似的,思考: 1.图书类型与学生类型实体中的属性是否存在冲突 2.引入两个“类型”实体的目的,规范化示例,思考: 读者实体的属性设置是否存在弊端?应如何改进?,规范化示例,关系模式,图书馆(图书馆编号、名称、网址、地址、联系人、电话、面积) 管理员(管理员编号、姓名、出生年月、学历、职称、图书馆编号、岗位、证件、证件号) 权限(权限编号、名称、管理员编号) 读者(读者编号、姓名、出生年月、类型编号、单位、证件、证件号、已借书数) 读者类型(类型编号、类型名) 图书(图书编号、名称、出版社、ISBN、作者、单价、出版日期、入库日期、管理员编号、图书
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 民族医药项目可行性研究报告
- 医学课件-泌尿系统X线诊断讲义
- 本地问答系统实践课程设计
- 产品课程设计报告
- SolidWorks减速器建模技巧课程设计
- 数据中心用高效电力配电设备开发可行性研究报告
- 年产95套化工运输罐车防腐涂层(耐高温型)生产项目可行性研究报告
- 图像处理入门灰度化课程设计
- 产品风格与识别课程设计
- RFM模型客户价值分析客户获取课程设计
- T/CAPE 11005-2023光伏电站光伏组件清洗技术规范
- 《社会调查》课件
- (高清版)DB52∕T 1723-2023 城市道路占道作业交通组织与安全设施设置要求
- 沪科版八年级数学上册全册教案教学设计(含教学反思)
- 零星工程维修 投标方案(技术方案)
- 2024至2030年中国泰妙菌素行业投资前景及策略咨询研究报告
- DB44-T 2508-2024 自助加油站建设及管理规范
- 高中化学必修一必修二综合测试题和解答
- 第七章 固体表面化学
- (正式版)JBT 14660-2024 额定电压6kV到30kV地下掘进设备用橡皮绝缘软电缆
- 建筑工程分部分项工程划分表(新版)
评论
0/150
提交评论