1、NoImage计算机科学与工程系计算机科学与工程系-1第第6章章 数据库设计数据库设计 数据库设计是开发数据库应用系统的关数据库设计是开发数据库应用系统的关键。简单地讲数据库设计就是创建数据库系键。简单地讲数据库设计就是创建数据库系统的管理对象。统的管理对象。 本章以学生信息管理系统为例本章以学生信息管理系统为例, ,讲解数讲解数据库设计的有关内容。据库设计的有关内容。NoImage计算机科学与工程系计算机科学与工程系-2 数据库设计方法数据库设计方法主要是设计数据库系统结构中的三级模式结构。主要是设计数据库系统结构中的三级模式结构。物理模式物理模式逻辑模式逻辑模式外模式外模式1外模式外模式3
2、外模式外模式2应用应用E应用应用D应用应用C应用应用B应用应用A 磁盘磁盘说明:逻辑模式说明:逻辑模式与外模式是一对与外模式是一对多的关系;逻辑多的关系;逻辑模式与物理模式模式与物理模式是一对一的关系。是一对一的关系。NoImage计算机科学与工程系计算机科学与工程系-3 数据库设计步骤数据库设计步骤数据库的设计过程可分为六个阶段:数据库的设计过程可分为六个阶段: 1. 需求分析需求分析2. 概念结构设计阶段概念结构设计阶段3. 逻辑结构设计阶段逻辑结构设计阶段4. 物理结构设计阶段物理结构设计阶段5. 数据库实施数据库实施6. 数据库运行与维护数据库运行与维护概念结构设计阶段概念结构设计阶段
3、需求分析需求分析物理结构设计阶段物理结构设计阶段逻辑结构设计阶段逻辑结构设计阶段数据库运行维护数据库运行维护数据库实施数据库实施NoImage计算机科学与工程系计算机科学与工程系-4 需求分析是数据库设计的第一步。这一阶段主要是对数据需求分析是数据库设计的第一步。这一阶段主要是对数据库应用系统所要处理的对象进行全面了解,了解用户需求,收库应用系统所要处理的对象进行全面了解,了解用户需求,收集信息,提出问题及解决问题的思路。集信息,提出问题及解决问题的思路。 例如:建立例如:建立“学生信息管理系统学生信息管理系统”,目的是对学院、系、,目的是对学院、系、班级、教研室等部门的信息进行管理,还要管理
4、教师和学生的班级、教研室等部门的信息进行管理,还要管理教师和学生的基本信息,以及学生选课的情况。基本信息,以及学生选课的情况。 信息要求:系统涉及到学院、系、教研室、教师、学生、信息要求:系统涉及到学院、系、教研室、教师、学生、班级、课程、选课等各方面的信息。班级、课程、选课等各方面的信息。 处理要求:增加、删除、修改各数据对象中的数据,各类处理要求:增加、删除、修改各数据对象中的数据,各类查询、统计及报表打印等等。查询、统计及报表打印等等。 安全性要求:只允许学院内部人员使用该系统,允许学生安全性要求:只允许学院内部人员使用该系统,允许学生查询成绩但不能修改,允许教师录入和修改学生成绩等。查
5、询成绩但不能修改,允许教师录入和修改学生成绩等。NoImage计算机科学与工程系计算机科学与工程系-5 概念设计的目标是产生反映需求信息的数据库概念设计的目标是产生反映需求信息的数据库概念结构,它与具体的概念结构,它与具体的DBMS无关。从现实世界到无关。从现实世界到概念模型的转换是由数据库设计人员完成的,概念概念模型的转换是由数据库设计人员完成的,概念设计用实体设计用实体-联系模型联系模型(简称简称E-R图图) 表示。在表示。在E-R模模型中,用于描述数据的概念主要有实体、属性、实型中,用于描述数据的概念主要有实体、属性、实体型、实体集、关键字及实体之间的联系等。体型、实体集、关键字及实体之
6、间的联系等。 现实世界现实世界概念模型概念模型将现实世界将现实世界客观存在的事物及客观存在的事物及其相互间联系通过符号记录下其相互间联系通过符号记录下来来抽象为信息世界。抽象为信息世界。NoImage计算机科学与工程系计算机科学与工程系-6 (1) 实体:客观存在并相互区别的事物。实体:客观存在并相互区别的事物。 实体可以是可触及的对象,如一个学生,一本实体可以是可触及的对象,如一个学生,一本书,一辆汽车;也可以是抽象的事件,如一堂课,书,一辆汽车;也可以是抽象的事件,如一堂课,一次比赛等。一次比赛等。 (2) 属性:实体所具有的特征和性质。属性:实体所具有的特征和性质。 如:学生实体有学号、
7、姓名、年龄、性别等。如:学生实体有学号、姓名、年龄、性别等。NoImage计算机科学与工程系计算机科学与工程系-7 (3) 码:在实体的属性当中能够唯一的标识一码:在实体的属性当中能够唯一的标识一个实体的属性称为这个实体的关键字,也称码或键。个实体的属性称为这个实体的关键字,也称码或键。 如:学生的学号。而学生的姓名可能有重名,如:学生的学号。而学生的姓名可能有重名,不能作为学生实体的关键字不能作为学生实体的关键字(码码)。 (4) 实体集:具有相同属性的同一类事物,是实体集:具有相同属性的同一类事物,是一个实体的集合。一个实体的集合。 如:所有的学生信息记录、所有的课程信息如:所有的学生信息
8、记录、所有的课程信息记录等。记录等。NoImage计算机科学与工程系计算机科学与工程系-8 (5) 实体型:用实体名和属性名称集来描述同实体型:用实体名和属性名称集来描述同类实体。类实体。 如:学生如:学生(学号,姓名,年龄,性别学号,姓名,年龄,性别)就是一个就是一个实体型。所有学生都可用这一实体型进行描述。实体型。所有学生都可用这一实体型进行描述。 两个或两个以上的实体集间的关联关系的描述。两个或两个以上的实体集间的关联关系的描述。 如:系与系主任、班级与班长如:系与系主任、班级与班长(1:1关系关系) ;系与;系与教研室、班级与学生教研室、班级与学生(1:n关系关系) ;学生与课程、教师
9、;学生与课程、教师与课程与课程(m:n关系关系) 。 实体集之间的联系分一对一实体集之间的联系分一对一(1:1)、一对多、一对多(1:n)、多对多、多对多(m:n)3种。种。NoImage计算机科学与工程系计算机科学与工程系-9 E-R模型模型(概念模型的描述方法概念模型的描述方法) ,是用实体,是用实体-联系联系图图(简称简称E-R图)来描述的,是通过图形描述实体集、图)来描述的,是通过图形描述实体集、实体属性和实体集之间联系的图形。实体属性和实体集之间联系的图形。 实体集实体集矩形框矩形框 属性属性椭圆框椭圆框 联系联系菱形框菱形框例如:例如:学院实体集的学院实体集的E-R图图学院学院学院
10、编号学院编号学院名称学院名称院长姓名院长姓名学院电话学院电话学院地址学院地址NoImage计算机科学与工程系计算机科学与工程系-10 例如:教师与班级、学院与系和班级、学生例如:教师与班级、学院与系和班级、学生和课程实体集之间联系的和课程实体集之间联系的E-R图。图。教师教师班级班级班主任班主任11学生学生课程课程选课选课mn学院学院系系设置设置n1班级班级设置设置1nNoImage计算机科学与工程系计算机科学与工程系-11 例如:学生、教师和课程三个实体共同参与了例如:学生、教师和课程三个实体共同参与了一个选课联系,一般称这种由三类实体参与的联系一个选课联系,一般称这种由三类实体参与的联系为
11、三元联系。因为某教师选定一门课讲授,学生选为三元联系。因为某教师选定一门课讲授,学生选中同一门课要学习时,三者才会联系起来。中同一门课要学习时,三者才会联系起来。 教师、学生与课程的教师、学生与课程的E-R图图mmnnNoImage计算机科学与工程系计算机科学与工程系-12 多对多关系实际上是某两个表多对多关系实际上是某两个表与第三个表的两个一对多关系,第与第三个表的两个一对多关系,第三个表的主键包含两个字段,分别三个表的主键包含两个字段,分别是前两个表的主键。是前两个表的主键。字段名字段名字段类型字段类型字段长度字段长度小数点小数点索引类型索引类型学号学号字符型字符型6 6主索引主索引姓名姓
12、名字符型字符型6 6性别性别字符型字符型2 2出生年月出生年月日期日期/ /时间型时间型短日期短日期籍贯籍贯字符型字符型5050班级编号班级编号字符型字符型8 8外键外键0短整型短整型数值型数值型学分学分短整型短整型数值型数值型学时学时12字符型字符型课程名课程名主索引主索引5字符型字符型课程编号课程编号索引类型索引类型小数点小数点字段长度字段长度字段类型字段类型字段名字段名0短整型短整型数值型数值型学分学分短整型短整型数值型数值型学时学时12字符型字符型课程名课程名主索引主索引5字符型字符型课程编号课程编号索引类型索引类型小数点小数点字段长度字段长度字段类型字段类型字段名字段名2单精度单精度
13、数值型数值型成绩成绩普通索引普通索引7字符型字符型教师编号教师编号普通索引普通索引5字符型字符型课程编号课程编号普通索引普通索引6字符型字符型学号学号索引类型索引类型小数点小数点字段长度字段长度字段类型字段类型字段名字段名2单精度单精度数值型数值型成绩成绩普通索引普通索引7字符型字符型教师编号教师编号普通索引普通索引5字符型字符型课程编号课程编号普通索引普通索引6字符型字符型学号学号索引类型索引类型小数点小数点字段长度字段长度字段类型字段类型字段名字段名选课选课 学生学生- -选课选课(1:n)(1:n) 课程课程- -选课选课(1:n) (1:n) 外键外键6字符型字符型教研室编教研室编号号
14、8字符型字符型职务职务2字符型字符型性别性别6字符型字符型姓名姓名主索引主索引7字符型字符型教师编号教师编号索引类型索引类型小数点小数点字段长度字段长度字段类型字段类型字段名字段名外键外键6字符型字符型教研室编教研室编号号8字符型字符型职务职务2字符型字符型性别性别6字符型字符型姓名姓名主索引主索引7字符型字符型教师编号教师编号索引类型索引类型小数点小数点字段长度字段长度字段类型字段类型字段名字段名教师教师- -选课选课(1:n) (1:n) nMMn此图为此图为3 3 个 表个 表与 第与 第 4 4个表的个表的联系。联系。NoImage计算机科学与工程系计算机科学与工程系-13学生信息管理
15、系统学生信息管理系统( (E-R概念模型概念模型) )学院学院学院编号学院编号学院名称学院名称院长姓院长姓名名学院电话学院电话学院地址学院地址设置设置系系系名称系名称系主任系主任系编号系编号学院编学院编号号1n学生学生属于属于姓名姓名性别性别学生编学生编号号出生年出生年月月籍贯籍贯班级编班级编号号1n课程课程学时学时学分学分课程名课程名课程编课程编号号mnnm选课选课成绩成绩1nn11n1教研室教研室设置设置教研室编号教研室编号教研室名称教研室名称系编号系编号n教师教师属于属于教师编号教师编号姓名姓名性别性别教研室编号教研室编号n1设置设置1n班级班级班级名班级名班长姓班长姓名名专业专业系编号
16、系编号班级编班级编号号NoImage计算机科学与工程系计算机科学与工程系-14 逻辑结构设计:将已设计好的概念模型逻辑结构设计:将已设计好的概念模型(E-R模模型型)转换为与转换为与DBMS支持的数据模型相符的逻辑结构。支持的数据模型相符的逻辑结构。 从概念模型到逻辑模型的转换可以由数据库设从概念模型到逻辑模型的转换可以由数据库设计人员完成,也可以用数据库设计工具协助设计人计人员完成,也可以用数据库设计工具协助设计人员完成。员完成。概念模型概念模型逻辑模型逻辑模型NoImage计算机科学与工程系计算机科学与工程系-15 一个实体型转换为一个关系模式。实体的属一个实体型转换为一个关系模式。实体的
17、属性就是关系的属性,实体的键就是关系的键。性就是关系的属性,实体的键就是关系的键。学院学院学院编号学院编号学院名称学院名称院长姓名院长姓名学院电话学院电话学院地址学院地址 例如:将学院实体转换为一个关系,其属性取原例如:将学院实体转换为一个关系,其属性取原来实体的属性,利用规则来实体的属性,利用规则1,得到关系模式:,得到关系模式: 学院学院(学院编号学院编号,学院名称学院名称,院长姓名院长姓名,学院电话学院电话,学学院地址院地址) NoImage计算机科学与工程系计算机科学与工程系-16 一个一个1:1联系可以转换为一个独立的关系模式,联系可以转换为一个独立的关系模式,也可以与任意一端对应的
18、关系模式合并。也可以与任意一端对应的关系模式合并。举例:两个实体举例:两个实体:一对一联系一对一联系系系(系编号系编号,系名字系名字,系性质系性质)系主任系主任 (工号工号,姓名姓名,年龄年龄,系编号系编号)系系(系编号系编号,系名字系名字,系性质系性质,工号工号)系主任系主任 (工号工号,姓名姓名,年龄年龄) 联系联系系系系编号系编号系名字系名字系性质系性质系主任系主任年龄年龄姓名姓名拥有拥有11工号工号系系(系编号系编号,系名字系名字,系性质系性质)系主任系主任 (工号工号,姓名姓名,年龄年龄)系与系主任系与系主任(工号工号,系编号系编号)系系(系编号系编号,系名字系名字,系性质系性质,
19、系主任姓名系主任姓名,年龄年龄)方式方式1方式方式2方式方式3方式方式4NoImage计算机科学与工程系计算机科学与工程系-17 一个一个1:n联系可以转换为一个独立的关系模式,联系可以转换为一个独立的关系模式,也可以与也可以与n端对应的关系模式合并。端对应的关系模式合并。 例如:两个实体例如:两个实体1:n关系关系属于属于n1学生学生姓姓名名性性别别学学号号出出生生年年月月籍籍贯贯班班级级编编号号班级班级班班级级名名班班长长姓姓名名专专业业系系编编号号班班级级编编号号联系联系 利用规则利用规则1将学生和班级实体各转换为一个关系,其属性将学生和班级实体各转换为一个关系,其属性取原来实体的属性,
20、得到关系模式:取原来实体的属性,得到关系模式: 学生学生(学号学号,姓名姓名,性别性别,出生年月出生年月,籍贯籍贯) 班级班级(班级编号,班级名称,班长姓名,专业,系编号班级编号,班级名称,班长姓名,专业,系编号) 由于班级与学生之间存在一对多的联系,利用规则由于班级与学生之间存在一对多的联系,利用规则3可将可将这种联系合并到这种联系合并到n端,即将班级关系的码加入到学生关系中,端,即将班级关系的码加入到学生关系中,得到最终结果:得到最终结果:学生学生(学号学号,姓名姓名,性别性别,出生年月出生年月,籍贯籍贯,班级编号班级编号)NoImage计算机科学与工程系计算机科学与工程系-18 实体之间
21、多对多的联系转换为一个独立的关系实体之间多对多的联系转换为一个独立的关系模式。与该联系相关系的各实体的码及联系本身的属模式。与该联系相关系的各实体的码及联系本身的属性均转换为此关系模式的属性,而关系的码为各实体性均转换为此关系模式的属性,而关系的码为各实体的码的组合。的码的组合。 三个或以上的实体间的一个多元联系可以转换三个或以上的实体间的一个多元联系可以转换为一个关系模式。为一个关系模式。 具有相同键的关系模式可以合并。具有相同键的关系模式可以合并。NoImage计算机科学与工程系计算机科学与工程系-19 例如:三个实体例如:三个实体m:n关系关系选课选课mm学生学生姓名姓名性别性别学号学号
22、出生出生年月年月籍贯籍贯班级班级编号编号教师教师姓名姓名性别性别教研教研室编室编号号教师教师编号编号联系联系班级班级课程课程名名学时学时学分学分课程课程编号编号nn成绩成绩 使用规则使用规则1:三个实体集转换为关系;:三个实体集转换为关系; 使用规则使用规则4和和5:为联系单独建立一个关系,即将:为联系单独建立一个关系,即将学生学生课程、教师课程、教师课程实体之间多对多的多元课程实体之间多对多的多元“选选课课”联系转换为一个独立的关系模式。联系转换为一个独立的关系模式。NoImage计算机科学与工程系计算机科学与工程系-20 实体之间多对多的多元实体之间多对多的多元“选课选课”联系转换为一个联
23、系转换为一个独立的关系模式如下:独立的关系模式如下: 学生学生(学号学号,姓名姓名,性别性别,出生年月出生年月,籍贯籍贯,班级编号班级编号) 教师教师(教师编号教师编号,姓名姓名,性别性别,职务职务,教研室编号教研室编号) 课程课程(课程编号课程编号,课程名课程名,学时学时,学分学分) 选课选课(学号学号,课程编号课程编号,教师编号教师编号,成绩成绩) (新关系包含两组多对多实体的主键及其联系自新关系包含两组多对多实体的主键及其联系自身的属性身的属性) NoImage计算机科学与工程系计算机科学与工程系-21概念模型理论概念模型理论关系模型理论关系模型理论关系数据库关系数据库实体集实体集关系关
24、系二维表记录集二维表记录集实体实体元组元组记录记录属性属性属性属性字段字段属性值属性值分量分量数据项数据项码码主键主键主键主键NoImage计算机科学与工程系计算机科学与工程系-22学院学院(学院编号学院编号,学院名称学院名称,院长姓名院长姓名,电话电话,地址地址)系系(系编号系编号,系名称系名称,系主任系主任,学院编号学院编号)教研室教研室(教研室编号教研室编号,教研室名称教研室名称,系编号系编号)教师教师(教师编号教师编号,姓名姓名,性别性别,职务职务,教研室编号教研室编号)班级班级(班级编号班级编号,班级名称班级名称,班长姓名班长姓名,专业专业,系编号系编号)学生学生(学号学号,姓名姓名
25、,性别性别,出生年月出生年月,籍贯籍贯,班级编号班级编号)课程课程(课程编号课程编号,课程名课程名,学时学时,学分学分)选课选课(学号学号,课程编号课程编号,教师编号教师编号,成绩成绩)学生信息管理系统学生信息管理系统( (逻辑逻辑模型模型) )NoImage计算机科学与工程系计算机科学与工程系-23 2. 函数依赖和键的基本概念函数依赖和键的基本概念(略略) 函数依赖它反映属性或属性组之间相依存,互函数依赖它反映属性或属性组之间相依存,互相制约的关系。相制约的关系。 简单地说,若想设计一个性能良好的数据库,简单地说,若想设计一个性能良好的数据库,就要尽量满足关系规范化原则。就要尽量满足关系规
26、范化原则。 1. 数据库设计中的问题数据库设计中的问题 如果一个关系没有经过规范化,可能会出现数如果一个关系没有经过规范化,可能会出现数据冗余、更新异常、插入异常、删除异常。据冗余、更新异常、插入异常、删除异常。NoImage计算机科学与工程系计算机科学与工程系-24 3. 范式及其关系范式及其关系(简介简介) 关系规范化理论简称范式,它提供了判别关系关系规范化理论简称范式,它提供了判别关系模式设计的优劣标准,为数据库设计提供了严格的模式设计的优劣标准,为数据库设计提供了严格的理论基础。理论基础。 使用范式表示关系模式满足规范化的等级,满使用范式表示关系模式满足规范化的等级,满足最低要求的为第
27、一范式,在第一范式的基础上满足最低要求的为第一范式,在第一范式的基础上满足进一步要求的可升级为第二范式,其余以此类推。足进一步要求的可升级为第二范式,其余以此类推。 范式范式(1NF5NF),主要为,主要为1NF-3NF。也就是。也就是说能满足前说能满足前3个范式的关系基本上是合理的。个范式的关系基本上是合理的。NoImage计算机科学与工程系计算机科学与工程系-25 (1) 1NF:若一个关系模式:若一个关系模式R的所有属性都是不可再分的所有属性都是不可再分的基本数据项,则该关系模式属于的基本数据项,则该关系模式属于1NF。 例如:教师关系表如下,判断是否为第一范式,并规范例如:教师关系表如
28、下,判断是否为第一范式,并规范教师关系。教师关系。教师编号教师编号姓名姓名系别系别联系电话联系电话联系电话联系电话1联系电话联系电话295010张乐张乐经济经济12341234567895011赵希明赵希明经济经济23452345678995012李小平李小平经济经济345634567890教师关系教师关系教师编号教师编号姓名姓名系别系别联系电话联系电话1联系电话联系电话295010张乐张乐经济经济12341234567895011赵希明赵希明经济经济23452345678995012李小平李小平经济经济345634567890修改后的教师关系修改后的教师关系 不符合第一范式,因为不符合第一范
29、式,因为“联系电话联系电话”不是基本数据项。不是基本数据项。 属于第一范式的关系应该满足的基本条件是每个元组属于第一范式的关系应该满足的基本条件是每个元组的每个属性中只能包含一个数据项,不能将两个以上数据的每个属性中只能包含一个数据项,不能将两个以上数据项项“挤入挤入”到一个属性中。到一个属性中。NoImage计算机科学与工程系计算机科学与工程系-26 (2) 2NF:若关系模式:若关系模式R属于属于1NF,且每个非主属性都,且每个非主属性都完全依赖于主关键字,则该关系模式属于完全依赖于主关键字,则该关系模式属于2NF。 例如:学生选课成绩关系表如下,判断是否为第二范例如:学生选课成绩关系表如
30、下,判断是否为第二范式,并规范学生选课关系。式,并规范学生选课关系。学生编号学生编号姓名姓名课程编号课程编号课程名称课程名称周学时周学时学分学分成绩成绩20020102刘力刘力101数据库数据库337720020104刘红刘红102英语英语6667学生选课成绩关系学生选课成绩关系 在这个关系中学生编号和课程编号共同组成主关键字,在这个关系中学生编号和课程编号共同组成主关键字,其中成绩完全依赖于主关键字,而姓名却完全依赖于学号,其中成绩完全依赖于主关键字,而姓名却完全依赖于学号,课程名称、周学时、学分又完全依赖于课程编号,因此,课程名称、周学时、学分又完全依赖于课程编号,因此,此关系不符合第二范
31、式。此关系不符合第二范式。NoImage计算机科学与工程系计算机科学与工程系-27 上述关系可能带来以下几个问题:上述关系可能带来以下几个问题: 数据冗余:假设数据冗余:假设100个学生选同一门课,重复个学生选同一门课,重复100次次相同的学分。相同的学分。 更新复杂:若调整某门课的学分,与其相关的记录更新复杂:若调整某门课的学分,与其相关的记录都要修改。都要修改。 删除异常:若学生已毕业,由于学生编号不存在,删除异常:若学生已毕业,由于学生编号不存在,选课记录也要删除。选课记录也要删除。 插入异常:或开一门新课,还没有学生选,由于没插入异常:或开一门新课,还没有学生选,由于没有学生编号,课程
32、编号、学分均无法输入。有学生编号,课程编号、学分均无法输入。 可以将上述关系分解为三个关系:可以将上述关系分解为三个关系: 学生学生(学生编号学生编号,姓名,年龄,入校日期,姓名,年龄,入校日期) 选课选课 (学生编号,课程编号学生编号,课程编号,成绩,成绩) 课程课程(课程编号课程编号,课程名称,周学时,学分,课程名称,周学时,学分)NoImage计算机科学与工程系计算机科学与工程系-28 (3) 3NF:若关系模式:若关系模式R属于属于1NF,且每个非,且每个非主属性都不传递依赖于主关键字,则关系模式属主属性都不传递依赖于主关键字,则关系模式属于于3NF。(略略) 学生选课成绩的三个关系:
33、学生选课成绩的三个关系: 学生学生(学生编号学生编号,姓名,年龄,入校日期,姓名,年龄,入校日期) 选课成绩选课成绩(学生编号,课程编号学生编号,课程编号,成绩,成绩) 课程课程(课程编号课程编号,课程名称,周学时,学分,课程名称,周学时,学分) 其中其中 和和属于第三范式,属于第三范式, 如果学分是依据周学如果学分是依据周学时多少来决定,那么学分就是通过周学时传递依赖于课时多少来决定,那么学分就是通过周学时传递依赖于课程号。程号。 解决方法是,将课程关系进一步分解为两个关系。解决方法是,将课程关系进一步分解为两个关系。 课程课程(课程编号课程编号,课程名称,周学时,课程名称,周学时) 学分学
34、分(周学时周学时,学分,学分)NoImage计算机科学与工程系计算机科学与工程系-29字段名字段名数据类型数据类型长度长度默认值默认值规则规则索引类型索引类型学号学号文本文本12无无无无 主索引主索引姓名姓名文本文本8无无无无一般索引一般索引性别性别文本文本2男男取值取值:男男 女女出生年月出生年月日期日期短日期短日期籍贯籍贯文本文本100无无无无班级编号班级编号文本文本6无无无无一般索引,外键一般索引,外键“学生学生”关系关系 逻辑结构详细设计:逻辑结构详细设计: 若选用了若选用了Access数据库管理系统,可按其要规则数据库管理系统,可按其要规则设计类似下面的逻辑结构。设计类似下面的逻辑结
35、构。NoImage计算机科学与工程系计算机科学与工程系-30 数据库物理结构设计就是为已设计好的逻辑数数据库物理结构设计就是为已设计好的逻辑数据模型选择最适合应用要求的物理结构。它依赖于据模型选择最适合应用要求的物理结构。它依赖于所选择的数据库管理系统和给定的计算机硬件软硬所选择的数据库管理系统和给定的计算机硬件软硬件环境。件环境。逻辑模型逻辑模型物理模型物理模型将信息世界的数据描述成计将信息世界的数据描述成计算机处理的数据形式。算机处理的数据形式。NoImage计算机科学与工程系计算机科学与工程系-31 数据库实施就是在计算机上建立起实际数据库数据库实施就是在计算机上建立起实际数据库结构、装
36、入数据、测试和试运行的过程。结构、装入数据、测试和试运行的过程。 数据库实施步骤:数据库实施步骤: 定义数据库结构定义数据库结构 组织数据入库组织数据入库 编写和调试应用程序编写和调试应用程序 数据库试运行数据库试运行 数据库系统正式运行,标志着数据库设计与应数据库系统正式运行,标志着数据库设计与应用开发工作的结束和维护阶段的开始用开发工作的结束和维护阶段的开始 。NoImage计算机科学与工程系计算机科学与工程系-32 数据库设计的几个部分数据库设计的几个部分需求分析需求分析概念结构设计概念结构设计逻辑结构设计逻辑结构设计物理结构设计物理结构设计数据库的实施数据库的实施 使用与维护使用与维护