书签 分享 收藏 举报 版权申诉 / 65
上传文档赚钱

类型《SQL Server数据库应用开发技术》课件第二章.ppt

  • 上传人(卖家):momomo
  • 文档编号:5668882
  • 上传时间:2023-04-30
  • 格式:PPT
  • 页数:65
  • 大小:862KB
  • 【下载声明】
    1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
    2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
    3. 本页资料《《SQL Server数据库应用开发技术》课件第二章.ppt》由用户(momomo)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
    4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
    5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
    配套讲稿:

    如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。

    特殊限制:

    部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。

    关 键  词:
    SQL Server数据库应用开发技术 SQL Server数据库应用开发技术课件第二章 SQL Server 数据库 应用 开发 技术 课件 第二
    资源描述:

    1、第第2 2章章 数据库设计数据库设计 知识技能目标:知识技能目标:1理解数据库设计过程理解数据库设计过程2掌握数据库设计的方法步骤掌握数据库设计的方法步骤第第2 2章章 数据库设计数据库设计 引导案例:引导案例:小型教务管理系统,可进行选课,录入、修改小型教务管理系统,可进行选课,录入、修改、查询、统计成绩,管理基本信息、查询、统计成绩,管理基本信息这些工作涉及到学生的数据、课程的数据、学这些工作涉及到学生的数据、课程的数据、学生每门课程的成绩、系部、专业和班级的数据等,生每门课程的成绩、系部、专业和班级的数据等,这些数据需要合理地组织存储这些数据需要合理地组织存储这就需要进行数据库设计,即设

    2、计教务管理数这就需要进行数据库设计,即设计教务管理数据库。据库。本章来介绍教务管理数据库的设计。本章来介绍教务管理数据库的设计。第第2 2章章 数据库设计数据库设计2.1 2.1 数据库设计过程数据库设计过程2.2 2.2 教务管理系统需求教务管理系统需求2.3 2.3 建立教务管理建立教务管理E-RE-R模型模型2.4 2.4 建立教务管理关系模型建立教务管理关系模型2.5 2.5 设计数据完整性设计数据完整性2.6 2.6 教务管理数据库的逻辑结构教务管理数据库的逻辑结构小结小结2.1 2.1 数据库设计过程数据库设计过程数据库设计数据库设计:是指按照应用要求为某一组织设计一个结构是指按照

    3、应用要求为某一组织设计一个结构合理、使用方便、性能良好的数据库及其应用合理、使用方便、性能良好的数据库及其应用系统。系统。返回目录2.1 2.1 数据库设计过程数据库设计过程返回目录数据库设计的内容数据库设计的内容:两个方面:两个方面:数据库的结构设计数据库的结构设计(静态静态)数据库的行为设计数据库的行为设计(动态动态)2.1 2.1 数据库设计过程数据库设计过程数据库设计过程:数据库设计过程:数据库运行与维护数据库运行与维护需求分析需求分析数据库逻辑设计数据库逻辑设计数据库物理设计数据库物理设计数据库实施数据库实施需求说明逻辑结构物理结构数据库系统返回目录2.1 2.1 数据库设计过程数据

    4、库设计过程需求分析需求分析需求分析的任务是对现实环境进行详细调查,对用需求分析的任务是对现实环境进行详细调查,对用户业务活动进行仔细分析,在此基础上充分理解和明确户业务活动进行仔细分析,在此基础上充分理解和明确用户的各种需求,包括用户对数据的需求、对数据处理用户的各种需求,包括用户对数据的需求、对数据处理的需求、安全性需求、完整性需求。的需求、安全性需求、完整性需求。需求分析是整个数据库设计的基础,以后的设计都需求分析是整个数据库设计的基础,以后的设计都将依赖于这一步。因此需求分析是至关重要的一步。需将依赖于这一步。因此需求分析是至关重要的一步。需求分析的结果是否准确反映了用户的要求,将决定最

    5、终求分析的结果是否准确反映了用户的要求,将决定最终建立的数据库是否实用。建立的数据库是否实用。返回目录2.1 2.1 数据库设计过程数据库设计过程数据库逻辑设计数据库逻辑设计包括:包括:概念结构设计概念结构设计 逻辑结构设计逻辑结构设计概念结构设计:概念结构设计:是在需求分析的基础上,对用户需求进行抽象是在需求分析的基础上,对用户需求进行抽象,建立一个独立于具体数据库管理系统的概念模型,如,建立一个独立于具体数据库管理系统的概念模型,如E-R模型模型。概念结构设计是整个数据库设计的关键,建立的概念模型是否。概念结构设计是整个数据库设计的关键,建立的概念模型是否合理,将决定整个数据库设计的成败。

    6、合理,将决定整个数据库设计的成败。逻辑结构设计:逻辑结构设计:是将在概念结构设计中建立的概念模型转换为是将在概念结构设计中建立的概念模型转换为具体某一数据库管理系统支持的数据模型,并对这一数据模型进具体某一数据库管理系统支持的数据模型,并对这一数据模型进行优化。如将行优化。如将E-R模型转换为关系模型。模型转换为关系模型。返回目录2.1 2.1 数据库设计过程数据库设计过程数据库物理设计数据库物理设计针对逻辑结构设计中获得的逻辑数据模型,设计数针对逻辑结构设计中获得的逻辑数据模型,设计数据库在物理设备上的存储结构和存取方法,即设计数据据库在物理设备上的存储结构和存取方法,即设计数据库的物理结构

    7、。库的物理结构。对于关系数据库,在进行物理设计时要考虑以下几对于关系数据库,在进行物理设计时要考虑以下几个问题:个问题:估算数据库的数据存储量估算数据库的数据存储量 确定数据的存储位置确定数据的存储位置 设计索引设计索引返回目录2.1 2.1 数据库设计过程数据库设计过程数据库实施数据库实施根据前面逻辑设计和物理设计的结果,进行以下工根据前面逻辑设计和物理设计的结果,进行以下工作:作:建立数据库建立数据库 编写、调试应用程序编写、调试应用程序 组织数据入库组织数据入库 试运行应用系统试运行应用系统最后整理文档,编写应用系统的技术说明和使用说最后整理文档,编写应用系统的技术说明和使用说明书。明书

    8、。返回目录2.1 2.1 数据库设计过程数据库设计过程数据库运行维护数据库运行维护数据库应用系统试运行数据库应用系统试运行投入正式运行投入正式运行在运行过程中对数据库进行维护,包括:在运行过程中对数据库进行维护,包括:数据库备份与恢复数据库备份与恢复数据库安全性与完整性控制数据库安全性与完整性控制不断对系统进行评价、调整和完善不断对系统进行评价、调整和完善 返回目录2.1 2.1 数据库设计过程数据库设计过程 说明:说明:一个理想的数据库应该安全、可靠、便于维护、易一个理想的数据库应该安全、可靠、便于维护、易于扩充、冗余最小,并且对用户的数据访问有较快的响于扩充、冗余最小,并且对用户的数据访问

    9、有较快的响应速度。应速度。这样的数据库不可能一蹴而就,需要不断反复上述这样的数据库不可能一蹴而就,需要不断反复上述步骤,反复探寻、逐步求精。步骤,反复探寻、逐步求精。数据库设计过程是一个反复探寻、逐步求精的过程数据库设计过程是一个反复探寻、逐步求精的过程。返回目录2.2 2.2 教务管理系统需求教务管理系统需求系统需求分析系统需求分析:1.详细调查了解具体院校的教务管理工作情况,明确用户的各详细调查了解具体院校的教务管理工作情况,明确用户的各种需求;种需求;2.确定教务管理系统的边界,即确定哪些工作由计算机完成,确定教务管理系统的边界,即确定哪些工作由计算机完成,哪些工作由人工完成;哪些工作由

    10、人工完成;3.具体分析系统应具有哪些功能,完成哪些任务,确定教务管具体分析系统应具有哪些功能,完成哪些任务,确定教务管理系统的功能功能需求;理系统的功能功能需求;4.仔细分析教务管理活动流程,分析教务管理活动中所涉及到仔细分析教务管理活动流程,分析教务管理活动中所涉及到的数据和数据格式,如何加工处理这些数据,从而确定系统的数据和数据格式,如何加工处理这些数据,从而确定系统对哪些数据完成什么样的处理,有什么样的安全性要求和完对哪些数据完成什么样的处理,有什么样的安全性要求和完整性要求,即确定系统的数据需求。整性要求,即确定系统的数据需求。返回目录2.2 2.2 教务管理系统需求教务管理系统需求教

    11、务管理系统教务管理系统功能需求功能需求:(1)选课管理)选课管理提供选课界面,列出有关课程信息供学生查询选课。记录存储学生选提供选课界面,列出有关课程信息供学生查询选课。记录存储学生选课信息,随时查询学生选课信息,同时允许学生退课。课信息,随时查询学生选课信息,同时允许学生退课。(2)成绩管理)成绩管理对学生所选课程的成绩进行管理,包括成绩登记、成绩查询、统计汇对学生所选课程的成绩进行管理,包括成绩登记、成绩查询、统计汇总以及成绩的修改和删除。总以及成绩的修改和删除。(3)基本信息的存储、检索和维护)基本信息的存储、检索和维护包括学生信息、课程信息、班级信息、专业信息、系部信息和用户信包括学生

    12、信息、课程信息、班级信息、专业信息、系部信息和用户信息等基本信息的输入存储,按多种方式进行检索,并能对这些信息进行息等基本信息的输入存储,按多种方式进行检索,并能对这些信息进行修改和删除。修改和删除。返回目录2.2 2.2 教务管理系统需求教务管理系统需求教务管理系统教务管理系统数据需求数据需求:(1)数据)数据有关学生的数据;有关课程的数据;有关成绩的数据;有关班级、专有关学生的数据;有关课程的数据;有关成绩的数据;有关班级、专业、系部的数据。业、系部的数据。(2)数据处理)数据处理选课管理,成绩管理,对学生、课程、班级、专业、系部以及用户等选课管理,成绩管理,对学生、课程、班级、专业、系部

    13、以及用户等进行管理。进行管理。(3)完整性要求)完整性要求每门课程分别属于公共课、专业基础课和专业课三个类型,每门课程每门课程分别属于公共课、专业基础课和专业课三个类型,每门课程可以分别是必修课、选修课或限选课,每门课程可以分别以考试或考查可以分别是必修课、选修课或限选课,每门课程可以分别以考试或考查的方式进行考核,课程分别设置在第一至第八学期,每门课程的考试成的方式进行考核,课程分别设置在第一至第八学期,每门课程的考试成绩取百分制成绩。绩取百分制成绩。返回目录(4)安全性要求)安全性要求 学生、教师、教务人员三类不同用户分别具有不同的使用权限。学生、教师、教务人员三类不同用户分别具有不同的使

    14、用权限。2.3 2.3 建立教务管理建立教务管理E-RE-R模型模型进行进行概念结构设计概念结构设计,将现实世界的用户需求抽象为,将现实世界的用户需求抽象为信息世界的概念模型。信息世界的概念模型。E-R模型是用模型是用E-R图来表示的概念模型。它独立于图来表示的概念模型。它独立于具体的具体的DBMS,是现实世界与机器世界的中介,既能,是现实世界与机器世界的中介,既能够充分反映现实世界,又易于向机器世界的数据模型转够充分反映现实世界,又易于向机器世界的数据模型转换。换。建立建立E-R模型是整个数据库设计的关键。模型是整个数据库设计的关键。返回目录2.3 2.3 建立教务管理建立教务管理E-RE-

    15、R模型模型建立建立E-R模型,一般采用自底向上的方法:模型,一般采用自底向上的方法:1.建立局部的建立局部的E-R模型模型2.将局部将局部E-R模型进行集成模型进行集成3.建立总体的建立总体的E-R模型模型 返回目录2.3 2.3 建立教务管理建立教务管理E-RE-R模型模型2.3.1 2.3.1 建立局部建立局部E-RE-R模型模型 根据需求分析的结果,针对每个具体应用确定:根据需求分析的结果,针对每个具体应用确定:实体实体实体的实体的属性属性实体的实体的键键实体间的实体间的联系联系 返回目录2.3 2.3 建立教务管理建立教务管理E-RE-R模型模型2.3.1 2.3.1 建立局部建立局部

    16、E-RE-R模型模型 具体讲,按现实世界中事物的自然划分来定义实体具体讲,按现实世界中事物的自然划分来定义实体和属性,然后再进行必要的调整。和属性,然后再进行必要的调整。调整的原则:属性本身不能再有需要描述的性质;调整的原则:属性本身不能再有需要描述的性质;能作为属性对待的尽量作为属性对待。能作为属性对待的尽量作为属性对待。返回目录2.3 2.3 建立教务管理建立教务管理E-RE-R模型模型2.3.1 2.3.1 建立局部建立局部E-RE-R模型模型 选课管理局部选课管理局部E-RE-R模型模型mn学 号学 生课 程选 修课程号课程名成 绩姓 名返回目录2.3 2.3 建立教务管理建立教务管理

    17、E-RE-R模型模型2.3.1 2.3.1 建立局部建立局部E-RE-R模型模型成绩管理局部成绩管理局部E-RE-R模型模型学 生 成 绩课程成绩姓名学号返回目录2.3 2.3 建立教务管理建立教务管理E-RE-R模型模型2.3.1 2.3.1 建立局部建立局部E-RE-R模型模型基本信息管理的局部基本信息管理的局部E-RE-R模型模型 学 生学号出生日期政治面貌姓名性别入学时间联系电话 班 级班号班名班主任学生人数专 业专业号专业名 系 部系部号系部名系主任教师人数课 程课程号课程名学 时学 分学 期考核方式课程性质课程类型返回目录2.3 2.3 建立教务管理建立教务管理E-RE-R模型模型

    18、2.3.2 2.3.2 集成全局集成全局E-RE-R模型模型 各个局部各个局部E-R模型建立好后,将这些局部模型建立好后,将这些局部E-R模型模型进行集成,建立全局进行集成,建立全局E-R模型。模型。1.合并局部E-R模型,解决冲突,生成初步E-R图2.修改和重构初步E-R图,消除冗余,生成基本E-R图。返回目录2.3 2.3 建立教务管理建立教务管理E-RE-R模型模型2.3.2 2.3.2 集成全局集成全局E-RE-R模型模型 合并局部合并局部E-R模型生成初步模型生成初步E-R图图学生学号出生日期政治面貌姓名性别入学时间联系电话属于班级班号班名班主任学生人数属于专业专业号专业名属于系部系

    19、部号系部名系主任教师人数n 1 1 n 1 n 返回目录2.3 2.3 建立教务管理建立教务管理E-RE-R模型模型2.3.2 2.3.2 集成全局集成全局E-RE-R模型模型 合并局部合并局部E-R模型生成初步模型生成初步E-R图图学生学号出生日期政治面貌姓名性别入学时间联系电话属于班级班号班名班主任学生人数属于专业专业号专业名属于系部系部号系部名系主任教师人数n 1 1 n 1 n 成 绩选修mn课程号课程名学时学分学期课程类型考核方式课程性质课程学生成绩学号姓名成 绩具有1 n 返回目录2.3 2.3 建立教务管理建立教务管理E-RE-R模型模型2.3.2 2.3.2 集成全局集成全局E

    20、-RE-R模型模型 合并局部合并局部E-R模型生成初步模型生成初步E-R图图关键要消除关键要消除结构冲突结构冲突、属性冲突属性冲突和和命名冲突命名冲突。结构冲突结构冲突:同一事物在不同应用中具有不同的抽象;同一实体在:同一事物在不同应用中具有不同的抽象;同一实体在不同的应用中属性组成不同不同的应用中属性组成不同(个数个数,次序次序);同一联系,在不同应;同一联系,在不同应用中呈现不同类型。用中呈现不同类型。属性冲突属性冲突:属性域冲突,即属性值的类型和取值范围不同、属性:属性域冲突,即属性值的类型和取值范围不同、属性的取值单位冲突。的取值单位冲突。命名冲突命名冲突:同名异义、异名同义,即不同意

    21、义的事物在不同的局:同名异义、异名同义,即不同意义的事物在不同的局部应用中具有相同的名字,同一意义的事物在不同的局部应用中部应用中具有相同的名字,同一意义的事物在不同的局部应用中具有不同的名字。具有不同的名字。返回目录2.3 2.3 建立教务管理建立教务管理E-RE-R模型模型2.3.2 2.3.2 集成全局集成全局E-RE-R模型模型 消除冗余生成基本消除冗余生成基本E-R图图生成初步生成初步E-R图后,进一步检查是否存在图后,进一步检查是否存在冗余的数冗余的数据据和和冗余的联系冗余的联系。冗余的数据冗余的数据是指可由基本数据导出的数据;是指可由基本数据导出的数据;冗余的联系冗余的联系是指可

    22、由其他联系导出的联系。是指可由其他联系导出的联系。如果存在这些冗余,就需要对初步如果存在这些冗余,就需要对初步E-R图进行修改图进行修改和重构,消除不必要的冗余,生成基本和重构,消除不必要的冗余,生成基本E-R图,这样图,这样就建立起了全局就建立起了全局E-R模型。模型。返回目录2.3 2.3 建立教务管理建立教务管理E-RE-R模型模型2.3.2 2.3.2 集成全局集成全局E-RE-R模型模型 消除冗余生成基本消除冗余生成基本E-R图图学生学号出生日期政治面貌姓名性别入学时间联系电话属于班级班号班名班主任学生人数属于专业专业号专业名属于系部系部号系部名系主任教师人数n 1 1 n 1 n

    23、课程号课程名学时学分学期课程类型考核方式成 绩课程性质选修课程mn返回目录2.4 2.4 建立教务管理关系模型建立教务管理关系模型E-R模型是概念结构设计的结果模型是概念结构设计的结果接下来进行接下来进行逻辑结构设计逻辑结构设计:将将E-R模型转换为关系模型模型转换为关系模型对关系模型进行优化对关系模型进行优化返回目录2.4 2.4 建立教务管理关系模型建立教务管理关系模型2.4.1 E-R2.4.1 E-R模型转换为关系模型模型转换为关系模型 关系模型实质上就是一组关系模式的集合关系模型实质上就是一组关系模式的集合E-R模型转换为关系模型,就是将模型转换为关系模型,就是将E-R模型中的实模型

    24、中的实体、实体间的联系转换为关系模式。体、实体间的联系转换为关系模式。具体转换方法如下:具体转换方法如下:返回目录2.4 2.4 建立教务管理关系模型建立教务管理关系模型2.4.1 E-R2.4.1 E-R模型转换为关系模型模型转换为关系模型(1)一个实体型转换为一个关系模式,实体的属性就是)一个实体型转换为一个关系模式,实体的属性就是关系的属性,实体的键就是关系的键。关系的属性,实体的键就是关系的键。例如,例如,“学生学生”实体转换为关系模式:实体转换为关系模式:学生(学生(学号学号,姓名,性别,出生日期,政治面貌,入学时间,姓名,性别,出生日期,政治面貌,入学时间,联系电话联系电话)返回目

    25、录2.4 2.4 建立教务管理关系模型建立教务管理关系模型2.4.1 E-R2.4.1 E-R模型转换为关系模型模型转换为关系模型(2)一个联系转换为一个关系模式,相联系实体的键和)一个联系转换为一个关系模式,相联系实体的键和联系的属性转换为关系的属性。联系的属性转换为关系的属性。l 对对“多对多多对多”联系,关系的键为各实体的键的组合;联系,关系的键为各实体的键的组合;l 对对“一对多一对多”联系,关系的键为联系,关系的键为“多多”端实体的键,或者也可端实体的键,或者也可以将此关系模式与以将此关系模式与“多多”端实体对应的关系模式合并;端实体对应的关系模式合并;l 对对“一对一一对一”联系,

    26、每个实体的键均为该关系的候选键,或者联系,每个实体的键均为该关系的候选键,或者也可以将此关系模式与任意一端实体对应的关系模式合并。也可以将此关系模式与任意一端实体对应的关系模式合并。返回目录2.4 2.4 建立教务管理关系模型建立教务管理关系模型2.4.1 E-R模型转换为关系模型例如,例如,“学生学生”与与“课程课程”间的联系间的联系“选修选修”,是一个是一个“多对多多对多”联系联系可将它转换为关系模式:可将它转换为关系模式:选课(选课(学号,课程号学号,课程号,成绩),成绩)又如,又如,“系部系部”与与“专业专业”间的联系间的联系“属于属于”,是一个是一个“一对多一对多”联系联系可将它转换

    27、为关系模式:可将它转换为关系模式:属于(属于(专业号专业号,系部号),系部号)也可以将此关系模式与也可以将此关系模式与“多多”端实体端实体“专业专业”对应的关系模式合对应的关系模式合并并合并后的关系模式为:合并后的关系模式为:专业(专业(专业号专业号,专业名,系部号),专业名,系部号)返回目录2.4 2.4 建立教务管理关系模型建立教务管理关系模型2.4.1 E-R2.4.1 E-R模型转换为关系模型模型转换为关系模型(3)三个或三个以上实体间的一个多元联系转换为一个)三个或三个以上实体间的一个多元联系转换为一个关系模式,相联系实体的键和联系的属性转换为关系的关系模式,相联系实体的键和联系的属

    28、性转换为关系的属性,关系的键为各实体的键的组合。属性,关系的键为各实体的键的组合。返回目录2.4 2.4 建立教务管理关系模型建立教务管理关系模型2.4.1 E-R2.4.1 E-R模型转换为关系模型模型转换为关系模型按此方法,将教务管理按此方法,将教务管理E-R模型转换为如下关系模型:模型转换为如下关系模型:学生(学生(学号学号,姓名,性别,出生日期,政治面貌,入学时间,联系电话,班号),姓名,性别,出生日期,政治面貌,入学时间,联系电话,班号)课程(课程(课程号课程号,课程名,学时,学分,课程类型,课程性质,考核方式,学期),课程名,学时,学分,课程类型,课程性质,考核方式,学期)选课(选

    29、课(学号,课程号学号,课程号,成绩),成绩)班级(班级(班号班号,班名,班主任,学生人数,专业号),班名,班主任,学生人数,专业号)专业专业(专业号专业号,专业名,系部号,专业名,系部号)系部系部(系部号系部号,系部名,系主任,教师人数,系部名,系主任,教师人数)返回目录2.4 2.4 建立教务管理关系模型建立教务管理关系模型2.4.2 优化关系模型优化关系模型将将E-R模型转换为关系模型后,还需要进行关系规范化模型转换为关系模型后,还需要进行关系规范化处理,对关系模型进行优化,对关系模型的结构作进一处理,对关系模型进行优化,对关系模型的结构作进一步调整与完善,以达到提高数据库性能的目的。步调

    30、整与完善,以达到提高数据库性能的目的。返回目录2.4 2.4 建立教务管理关系模型建立教务管理关系模型2.4.2 优化关系模型优化关系模型关系规范化处理以规范化理论为指导关系规范化处理以规范化理论为指导1范式范式满足不同程度规范的关系模式,称之为不同的范式满足不同程度规范的关系模式,称之为不同的范式(Normal Form,简称,简称NF)。)。返回目录2.4 2.4 建立教务管理关系模型建立教务管理关系模型2.4.2 优化关系模型优化关系模型第一范式:第一范式:如果一个关系模式如果一个关系模式R的所有属性都是不可再分的数的所有属性都是不可再分的数据项,则据项,则R为第一范式。记作:为第一范式

    31、。记作:R1NF。例如,关系模式:例如,关系模式:R(学号,课程号,成绩,姓名,性别,班级,班主任学号,课程号,成绩,姓名,性别,班级,班主任)其中每个属性都不可再分,因此满足其中每个属性都不可再分,因此满足1NF。第一范式是对关系的一个最低要求。一个规范化的关系至少应第一范式是对关系的一个最低要求。一个规范化的关系至少应满足第一范式的要求。满足第一范式的要求。返回目录2.4 2.4 建立教务管理关系模型建立教务管理关系模型2.4.2 优化关系模型优化关系模型第二范式:第二范式:若关系模式若关系模式R1NF,并且每一个非主属性都完全,并且每一个非主属性都完全函数依赖于函数依赖于R的关键字,则的

    32、关键字,则R为第二范式。记作:为第二范式。记作:R2NF。返回目录2.4 2.4 建立教务管理关系模型建立教务管理关系模型2.4.2 优化关系模型优化关系模型例如,关系模式:例如,关系模式:R(学号,课程号学号,课程号,成绩,姓名,性别,班级,班主任,成绩,姓名,性别,班级,班主任)其中函数依赖为:其中函数依赖为:(学号,课程号)(学号,课程号)成绩成绩 学号学号 姓名姓名 学号学号 性别性别 学号学号 班级班级 班级班级 班主任班主任 学号学号 班主任班主任“姓名姓名”、“性别性别”等非主属性部分依赖于关键字。因此关系等非主属性部分依赖于关键字。因此关系R不不满足第二范式。满足第二范式。返回

    33、目录2.4 2.4 建立教务管理关系模型建立教务管理关系模型2.4.2 优化关系模型优化关系模型又如,关系模式:又如,关系模式:R1(学号学号,姓名,性别,班级,班主任,姓名,性别,班级,班主任)其中每个属性都不可再分,因而属于第一范式。其中每个属性都不可再分,因而属于第一范式。并且每个非主属性都完全函数依赖于并且每个非主属性都完全函数依赖于R1的关键字的关键字“学号学号”。因此关系因此关系R1满足第二范式。满足第二范式。第二范式消除了非主属性对关键字的部分函数依赖。即,满足第二范式消除了非主属性对关键字的部分函数依赖。即,满足2NF的关系,其非主属性完全函数依赖于关键字。的关系,其非主属性完

    34、全函数依赖于关键字。返回目录2.4 2.4 建立教务管理关系模型建立教务管理关系模型2.4.2 优化关系模型优化关系模型第三范式:第三范式:若关系模式若关系模式R2NF,并且它的每一个非主属性不,并且它的每一个非主属性不传递依赖于传递依赖于R的关键字,则的关键字,则R为第三范式。记作:为第三范式。记作:R3NF。返回目录2.4 2.4 建立教务管理关系模型建立教务管理关系模型2.4.2 优化关系模型优化关系模型例如,关系模式:例如,关系模式:R1(学号学号,姓名,性别,班级,班主任,姓名,性别,班级,班主任)第二范式第二范式其中存在函数依赖:其中存在函数依赖:学号学号 班主任班主任 班级班级

    35、班主任班主任非主属性非主属性“班主任班主任”传递函数依赖于关键字传递函数依赖于关键字“学号学号”。因此关系。因此关系R1不满足第三范式。不满足第三范式。返回目录2.4 2.4 建立教务管理关系模型建立教务管理关系模型2.4.2 优化关系模型优化关系模型又又如,关系模式:如,关系模式:R1(学号学号,姓名,性别,班级,姓名,性别,班级)每个属性不可再分,非主属性每个属性不可再分,非主属性“姓名姓名”、“性别性别”、“班级班级”都都完全函数依赖于关键字完全函数依赖于关键字“学号学号”,并且每个非主属性都不传递函,并且每个非主属性都不传递函数依赖于关键字数依赖于关键字“学号学号”。因此关系因此关系R

    36、11满足第三范式。满足第三范式。第三范式消除了非主属性对关键字的传递函数依赖,保证非主第三范式消除了非主属性对关键字的传递函数依赖,保证非主属性既不部分依赖于关键字,也不传递依赖于关键字。属性既不部分依赖于关键字,也不传递依赖于关键字。返回目录2.4 2.4 建立教务管理关系模型建立教务管理关系模型2.4.2 优化关系模型优化关系模型2规范化规范化低级范式的关系模式中存在非主属性对关键字的部分函数依赖低级范式的关系模式中存在非主属性对关键字的部分函数依赖和传递函数依赖,这些不合适的数据依赖将导致关系中存在删除和传递函数依赖,这些不合适的数据依赖将导致关系中存在删除异常、插入异常、修改复杂、数据

    37、冗余的问题。异常、插入异常、修改复杂、数据冗余的问题。规范化就是将一个低一级范式的关系模式转化为若干个高一级规范化就是将一个低一级范式的关系模式转化为若干个高一级范式的关系模式的集合,消除原来关系模式中存在的不合适的数范式的关系模式的集合,消除原来关系模式中存在的不合适的数据依赖,使得各个关系模式达到某种程度的分离,从而解决关系据依赖,使得各个关系模式达到某种程度的分离,从而解决关系中存在的数据冗余、插入异常、修改复杂、删除异常等问题。中存在的数据冗余、插入异常、修改复杂、删除异常等问题。返回目录2.4 2.4 建立教务管理关系模型建立教务管理关系模型2.4.2 优化关系模型优化关系模型2规范

    38、化规范化例如,关系模式:例如,关系模式:R(学号,课程号学号,课程号,成绩,姓名,性别,班级,班主任,成绩,姓名,性别,班级,班主任)R不属于第二范式不属于第二范式对其进行投影,将其分解为两个关系模式:对其进行投影,将其分解为两个关系模式:R1(学号学号,姓名,性别,班级,班主任,姓名,性别,班级,班主任)R2(学号,课程号学号,课程号,成绩,成绩)R1、R2属于第二范式属于第二范式返回目录2.4 2.4 建立教务管理关系模型建立教务管理关系模型2.4.2 优化关系模型优化关系模型2规范化规范化又如,关系模式:又如,关系模式:R1(学号学号,姓名,性别,班级,班主任,姓名,性别,班级,班主任)

    39、不属于第三范式不属于第三范式对其进行投影,将其分解为两个关系模式:对其进行投影,将其分解为两个关系模式:R11(学号学号,姓名,性别,班级,姓名,性别,班级)R12(班级班级,班主任,班主任)R11、R12属于第三范式属于第三范式返回目录2.4 2.4 建立教务管理关系模型建立教务管理关系模型2.4.2 优化关系模型优化关系模型2规范化规范化可见,规范化就是通过投影运算把低一级范式的关可见,规范化就是通过投影运算把低一级范式的关系模式分解为若干个高一级范式的关系模式,从而消除系模式分解为若干个高一级范式的关系模式,从而消除原来关系模式中存在的不合适的数据依赖,使得各个关原来关系模式中存在的不合

    40、适的数据依赖,使得各个关系模式达到某种程度的分离。系模式达到某种程度的分离。规范化实质上是概念的单一化,用一个关系表示一规范化实质上是概念的单一化,用一个关系表示一个实体或实体间的联系。个实体或实体间的联系。规范化过程就是对关系模式不断分解的过程。规范化过程就是对关系模式不断分解的过程。返回目录2.4 2.4 建立教务管理关系模型建立教务管理关系模型2.4.2 优化关系模型优化关系模型2规范化规范化u注意:注意:范式级别越高,规范化程度越高。但在具体应用中并不是说规范式级别越高,规范化程度越高。但在具体应用中并不是说规范化程度越高越好。因为,如果规范化程度太低,则存在如前所范化程度越高越好。因

    41、为,如果规范化程度太低,则存在如前所述的数据冗余严重等问题,但如果规范化程度过高,则会影响系述的数据冗余严重等问题,但如果规范化程度过高,则会影响系统速度。因此在实际应用中应该具体应用具体对待。统速度。因此在实际应用中应该具体应用具体对待。返回目录2.5 2.5 设计数据完整性设计数据完整性 为保证数据库中的数据正确、有效、一致可靠,需为保证数据库中的数据正确、有效、一致可靠,需要根据教务管理实际应用的需求进行数据完整性设计,要根据教务管理实际应用的需求进行数据完整性设计,包括:包括:l实体完整性设计实体完整性设计 l域完整性设计域完整性设计l参照完整性设计参照完整性设计l用户定义完整性设计用

    42、户定义完整性设计 返回目录2.5 2.5 设计数据完整性设计数据完整性1实体完整性设计实体完整性设计 为保证实体完整性,为每个关系设计主关键字。如为保证实体完整性,为每个关系设计主关键字。如:学生(学生(学号学号,姓名,性别,出生日期,政治面貌,入学时间,联系电话,班号),姓名,性别,出生日期,政治面貌,入学时间,联系电话,班号)课程(课程(课程号课程号,课程名,学时,学分,课程类型,课程性质,考核方式,学期),课程名,学时,学分,课程类型,课程性质,考核方式,学期)选课(选课(学号,课程号学号,课程号,成绩),成绩)班级(班级(班号班号,班名,班主任,学生人数,专业号),班名,班主任,学生人

    43、数,专业号)专业专业(专业号专业号,专业名,系部号,专业名,系部号)系部系部(系部号系部号,系部名,系主任,教师人数,系部名,系主任,教师人数)主关键字的值不能为空,这就保证了关系中每一个元组都是可识主关键字的值不能为空,这就保证了关系中每一个元组都是可识别的。一个元组对应一个实体,因此保证了每个实体都区别于其别的。一个元组对应一个实体,因此保证了每个实体都区别于其他实体,是可识别、可区分的。他实体,是可识别、可区分的。返回目录2.5 2.5 设计数据完整性设计数据完整性2域完整性设计域完整性设计 根据教务管理实际应用,为每个关系的每个属性设计数据类型、根据教务管理实际应用,为每个关系的每个属

    44、性设计数据类型、格式和有效的数据范围。格式和有效的数据范围。如:学生关系中的属性如:学生关系中的属性“学号学号”设计为字符型,长度为设计为字符型,长度为11个字符个字符;属性;属性“性别性别”设计为字符型,取值范围为设计为字符型,取值范围为“男男”或或“女女”;选;选课关系中的属性课关系中的属性“成绩成绩”设计为数值型,取值范围为设计为数值型,取值范围为0-100等。等。域完整性保证了每个属性具有正确的数据类型、格式和有效的数域完整性保证了每个属性具有正确的数据类型、格式和有效的数据范围。据范围。返回目录2.5 2.5 设计数据完整性设计数据完整性3参照完整性设计参照完整性设计为保证数据的一致

    45、性,作如下设计:为保证数据的一致性,作如下设计:学生关系中的属性学生关系中的属性“班号班号”的值参照班级关系中的主键的值参照班级关系中的主键“班号班号”的值;的值;选课关系中的属性选课关系中的属性“学号学号”的值参照学生关系中的主键的值参照学生关系中的主键“学号学号”的值;的值;选课关系中的属性选课关系中的属性“课程号课程号”的值参照的值参照“课程课程”关系中主键关系中主键“课程号课程号”的值;的值;班级关系中的属性班级关系中的属性“专业号专业号”的值参照专业关系中主键的值参照专业关系中主键“专业号专业号”的值的值;专业关系中的属性专业关系中的属性“系部号系部号”的值参照系部关系中主键的值参照

    46、系部关系中主键“系部号系部号”的值的值。参照完整性要求参照关系中外键的值,或者等于被参照关系中主参照完整性要求参照关系中外键的值,或者等于被参照关系中主键的值,或者为空。这就保证了同一属性在不同关系中值的一致键的值,或者为空。这就保证了同一属性在不同关系中值的一致性。性。返回目录2.5 2.5 设计数据完整性设计数据完整性4 4用户定义完整性设计用户定义完整性设计 用户定义完整性是根据具体应用环境的要求和实际需要,对某一用户定义完整性是根据具体应用环境的要求和实际需要,对某一具体应用所涉及的数据提出约束性条件具体应用所涉及的数据提出约束性条件。针对教务管理具体应用,设计如下约束性条件:针对教务

    47、管理具体应用,设计如下约束性条件:“系部号系部号”的组成为:的组成为:“00”+系部编号;系部编号;“专业号专业号”的组成为:的组成为:系部号系部号+专业编号;专业编号;“学号学号”的组成为:的组成为:入学年份入学年份+系部编号系部编号+专业编号专业编号+学生编号学生编号“课程号课程号”的组成为:的组成为:系部编号系部编号+专业编号专业编号+课程编号课程编号公共课的公共课的“课程号课程号”组成为:组成为:“0000”+课程编号课程编号用户定义完整性保证了具体应用所要求的数据完整性用户定义完整性保证了具体应用所要求的数据完整性 返回目录2.6 2.6 教务管理数据库的逻辑结构教务管理数据库的逻辑

    48、结构通过以上设计得到一组关系模式,这组关系模式的通过以上设计得到一组关系模式,这组关系模式的集合即为教务管理数据库模式。集合即为教务管理数据库模式。每一个关系模式就是教务管理数据库中的一个表,每一个关系模式就是教务管理数据库中的一个表,每个属性就是表中的一个字段。每个属性就是表中的一个字段。教务管理数据库的逻辑结构如下:教务管理数据库的逻辑结构如下:返回目录2.6 2.6 教务管理数据库的逻辑结构教务管理数据库的逻辑结构返回目录字段名字段名数据类型数据类型约束约束学号学号char(11)主键主键姓名姓名nchar(5)非空非空性别性别nchar(1)值为值为 男男 或或 女女出生日期出生日期d

    49、atetime政治面貌政治面貌varchar(10)默认为默认为 共青团员共青团员入学时间入学时间datetime联系电话联系电话char(20)班级班级char(5)外键(参照班级表的班号),非空外键(参照班级表的班号),非空备注备注varchar(200)学生表学生表2.6 2.6 教务管理数据库的逻辑结构教务管理数据库的逻辑结构返回目录课程表课程表字段名字段名数据类型数据类型约束约束课程号课程号char(6)主键主键课程名课程名varchar(20)非空,唯一非空,唯一学时学时tinyint学分学分tinyint课程类型课程类型nchar(5)非空非空值为值为 公共课公共课、专业基础课专

    50、业基础课或或 专业专业课课课程性质课程性质nchar(2)值为值为 必修必修、选修选修或或限选限选考核方式考核方式nchar(20)值为值为考试考试或或考查考查,默认为默认为考试考试学期学期char(1)值为值为1,2,3,4,5,6,7,8备注备注varchar(200)2.6 2.6 教务管理数据库的逻辑结构教务管理数据库的逻辑结构返回目录选课表选课表字段名字段名数据类型数据类型约束约束学号学号char(11)主键(学号主键(学号 课程号)课程号)外键(参照学生表的学号)外键(参照学生表的学号)课程号课程号char(6)主键(学号主键(学号 课程号)课程号)外键(参照课程表的课程号)外键(

    展开阅读全文
    提示  163文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    关于本文
    本文标题:《SQL Server数据库应用开发技术》课件第二章.ppt
    链接地址:https://www.163wenku.com/p-5668882.html

    Copyright@ 2017-2037 Www.163WenKu.Com  网站版权所有  |  资源地图   
    IPC备案号:蜀ICP备2021032737号  | 川公网安备 51099002000191号


    侵权投诉QQ:3464097650  资料上传QQ:3464097650
       


    【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。

    163文库