数据库原理及应用_CH4-5.ppt
《数据库原理及应用_CH4-5.ppt》由会员分享,可在线阅读,更多相关《数据库原理及应用_CH4-5.ppt(88页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、1 表与表之间的关系表与表之间的关系 数据库的设计数据库的设计 数据库的创建与打开数据库的创建与打开 使用向导创建表使用向导创建表 字段的定义字段的定义 表的设计视图表的设计视图 表中数据输入与操纵表中数据输入与操纵4 4章章第第创建数据库创建数据库 4.1 4.1 表与表之间的关系表与表之间的关系 1.1.表表关系数据库:关系数据库:用二维表格来表示和处理用二维表格来表示和处理信息世界的实体集和属性关系。信息世界的实体集和属性关系。表表记录:描述实体字段:实体属性 主码主码外码外码主码主码表与表之间的关系通过码来实现关联 2.2.表与表之间的关联表与表之间的关联 主码主码(主关键字)(主关键
2、字):表中一个或多个字段,其值惟一地表中一个或多个字段,其值惟一地标识一条记录。在两个表的关系中,主码用来在一个标识一条记录。在两个表的关系中,主码用来在一个表中引用来自于另一个表中的特定记录。表中引用来自于另一个表中的特定记录。系统不允许任何重复值或系统不允许任何重复值或Null值进行主码字段中。值进行主码字段中。主码的性质:主码的性质:主码主码不能为空不能为空,否则将失去对某些记录的控制和访问,否则将失去对某些记录的控制和访问 主码主码不能重复不能重复,否则主码所标识的记录将失去唯一性,否则主码所标识的记录将失去唯一性 主码主码不能修改不能修改。它不仅标识表中的记录,而且经常要与。它不仅标
3、识表中的记录,而且经常要与其他表中的字段进行关联。如果硬要修改,很容易给其他表中的字段进行关联。如果硬要修改,很容易给其所在的表以及其他相关的表造成意想不到的错误其所在的表以及其他相关的表造成意想不到的错误 外码外码(外部关键字)(外部关键字):也是表中的一个或多个字段,外也是表中的一个或多个字段,外码的值与相关表的主码相匹配。码的值与相关表的主码相匹配。3.3.主码与外码主码与外码 关系:关系:利用两个表的共有字段利用两个表的共有字段创建的关联性。通过表间的创建的关联性。通过表间的关联性,可将数据库中多个关联性,可将数据库中多个表联络成一个有机的整体表联络成一个有机的整体表与表间的关系类型:
4、表与表间的关系类型:一对一关系:一对一关系:基本表每条记基本表每条记录只对应相关联表中一个匹录只对应相关联表中一个匹配的记录,反之亦然配的记录,反之亦然 一对多关系:一对多关系:关系中最常用关系中最常用的类型。的类型。基本表一条基本表一条记录可记录可与与相关联表中多条相关联表中多条记录相匹记录相匹配。但相关联表一条记录只配。但相关联表一条记录只与基本表一条相匹配与基本表一条相匹配 4.4.关系关系 多对多关系多对多关系:基本表一条记录可与相关联表多个记录:基本表一条记录可与相关联表多个记录相匹配。相关联表中的一条记录也可与基本表的多条相匹配。相关联表中的一条记录也可与基本表的多条记录相匹配。记
5、录相匹配。这种类型的关系只能通过定义第三个表(联结表)来实这种类型的关系只能通过定义第三个表(联结表)来实现。联结表的主码包含两个字段:来源于两个表的外现。联结表的主码包含两个字段:来源于两个表的外码。多对多的关系实际上是通过第三个表来实现的两码。多对多的关系实际上是通过第三个表来实现的两个一对多的关系。个一对多的关系。本讲首页本讲首页4.2 4.2 数据库的设计数据库的设计 1.1.数据库的规划数据库的规划表是表是AccessAccess数据库的基础数据库的基础,记录着数据库中的全部内容,记录着数据库中的全部内容,而其他对象只是而其他对象只是AccessAccess提供的工具,用于对数据库进
6、提供的工具,用于对数据库进行维护和管理。因此,设计数据库的关键是设计表行维护和管理。因此,设计数据库的关键是设计表 确定实体(表)确定实体(表)确定实体标识符(主码)确定实体标识符(主码)确定关系(外码)确定关系(外码)确定数据元素属性(字段)确定数据元素属性(字段)E ER R模型设计:模型设计:定义了数据定义了数据库结构。识别和创建数据库结构。识别和创建数据库中实体及其关系库中实体及其关系实体可是具体的,也可是抽实体可是具体的,也可是抽象的。如象的。如Northwind的订的订单明细:是产品实体和订单明细:是产品实体和订单实体间的联系单实体间的联系 规范化的目标:规范化的目标:设计一个优化
7、的和符合逻辑的数据库方案设计一个优化的和符合逻辑的数据库方案,使得开发阶段对数据库的修改要求降到最低程度,且,使得开发阶段对数据库的修改要求降到最低程度,且有助于组织数据和消除数据库中的数据冗余有助于组织数据和消除数据库中的数据冗余规范化的要求:规范化的要求:表中都是不可再分的基本字段表中都是不可再分的基本字段(1NF)例如,当产品有出厂,批发,零售等多种价格时,要分例如,当产品有出厂,批发,零售等多种价格时,要分别设置相应字段。若价格结构太复杂,则可建新表专门别设置相应字段。若价格结构太复杂,则可建新表专门存放价格数据。存放价格数据。表中所有字段都必须依赖于主关键字表中所有字段都必须依赖于主
8、关键字(2NF)一个表只存储一种实体对象。一个表只存储一种实体对象。表中所有字段都是惟一的且不互相依赖表中所有字段都是惟一的且不互相依赖(3NF)例如,表中只设一个日期字段。不能再包含日,月和星例如,表中只设一个日期字段。不能再包含日,月和星期的字段。期的字段。2.2.数据库规范化数据库规范化 确保数据的完整性:确保数据的完整性:参照完整性:参照完整性:输入或删除记录时,为维持表间已定义的关输入或删除记录时,为维持表间已定义的关系而必须遵循的一个规则系统。系而必须遵循的一个规则系统。若实施了参照完整性,则在将与基本表无关的记录加入若实施了参照完整性,则在将与基本表无关的记录加入相关表时,相关表
9、时,Access会警告。若要从基本表中删除记录,会警告。若要从基本表中删除记录,相关表中却有对应记录时,相关表中却有对应记录时,Access会防止删除。会防止删除。设置参照完整性的条件:设置参照完整性的条件:来自于主表的匹配字段是主码或具有唯一的索引来自于主表的匹配字段是主码或具有唯一的索引 相关字段的数据类型相同相关字段的数据类型相同。例外:自动编号与长整型,。例外:自动编号与长整型,均为同步复制均为同步复制 ID的自动编号与数字字段可相关的自动编号与数字字段可相关。两个表都属于同一个两个表都属于同一个Access数据库数据库实行参照完整性后必须遵守的规则:实行参照完整性后必须遵守的规则:不
10、能将值输入到相关表的外码字段中,不能将值输入到相关表的外码字段中,若相关表中有匹配记录,不能从主表中删除它若相关表中有匹配记录,不能从主表中删除它 3.3.数据库设计步骤数据库设计步骤一般步骤一般步骤确定新建数据库的目的确定新建数据库的目的确定该数据库中需要的表确定该数据库中需要的表明确有唯一值的字段明确有唯一值的字段确定表中需要的字段确定表中需要的字段确定表之间的关系确定表之间的关系优化设计优化设计输入数据并新建其他数据库对象输入数据并新建其他数据库对象使用使用Microsoft Access的分析工具的分析工具表中信息不重复且不在表间复制每个表只含一个主题的信息字段都直接与表的主题相关不包
11、含推导或计算的数据包含所需的所有信息以最小的逻辑部分保存信息Access中三种主码:自动编号,单字段和多字段 例:设计例:设计“教学管理教学管理”数据数据库库S1:明确建库目的与功能要求:明确建库目的与功能要求 实现四方面信息的综合管理:实现四方面信息的综合管理:教师,学生,课程,学习成绩教师,学生,课程,学习成绩 教师可以查看学生的简况,成绩,课程教师可以查看学生的简况,成绩,课程 学生可以选择教师,课程和查看成绩学生可以选择教师,课程和查看成绩S2:确定数据库中的表:确定数据库中的表按下列原则对信息进行分类:按下列原则对信息进行分类:表中不含重复信息,且信息不应表中不含重复信息,且信息不应
12、在表之间复制在表之间复制 每条信息只保存在一个表中每条信息只保存在一个表中 每个表只包含一个主题的数据。每个表只包含一个主题的数据。学生登记表学生登记表 教师课程表教师课程表 课程名称表课程名称表 学生成绩表学生成绩表 S3:确定表中的字段:确定表中的字段 每个字段的内容均与表的主题相关每个字段的内容均与表的主题相关 相关主题的全部数据都要表现出来。相关主题的全部数据都要表现出来。不包含需要推导或计算的数据,要以最小逻辑部分作为不包含需要推导或计算的数据,要以最小逻辑部分作为字段来保存数据。字段来保存数据。S3.1:教师课程表分析:教师课程表分析 基本特征:基本特征:姓名,性别,职称,专业特长
13、等姓名,性别,职称,专业特长等 其它特征其它特征:工作时间,政治面貌,电话,课程号,:工作时间,政治面貌,电话,课程号,所属院系等所属院系等选取选取:教工号,姓名,性别,职称,课程号,电话教工号,姓名,性别,职称,课程号,电话S3.2:学生登记表分析:学生登记表分析基本特征基本特征:学号,姓名,性别,班级,出生日期:学号,姓名,性别,班级,出生日期 其它特征其它特征:籍贯,政治面貌,宿舍,班级,特长等:籍贯,政治面貌,宿舍,班级,特长等 选取选取:学号,姓名,性别,班级,出生日期,简历:学号,姓名,性别,班级,出生日期,简历 S3.3:课程名称表分析:课程名称表分析基本特征信息:基本特征信息:
14、课程号,教工号,课程名称课程号,教工号,课程名称其它特征信息:其它特征信息:学分,课时,先修课学分,课时,先修课选取:选取:课程号,教工号,课程名称,学分课程号,教工号,课程名称,学分S3.4:学生成绩表分析:学生成绩表分析基本特征信息:基本特征信息:学号,课程号,平时成绩,考试成绩学号,课程号,平时成绩,考试成绩其它特征信息:其它特征信息:学分,教工号,课程名称学分,教工号,课程名称选取:选取:学号,课程号,平时成绩,考试成绩学号,课程号,平时成绩,考试成绩S4:确定主码:确定主码学生登记表:学生登记表:学号学号教师课程表:教师课程表:教工号教工号课程名称表:课程名称表:课程号课程号学生成绩
15、表:学生成绩表:学号课程号学号课程号【注注】可增加一个值为序列号的字段作为主码可增加一个值为序列号的字段作为主码 S5:优化设计:优化设计问题:问题:教师课程表,若一人讲授多门课程,则有重复教师课程表,若一人讲授多门课程,则有重复数据,如:数据,如:教工号教工号 姓名姓名 性别性别 职称职称 课程编号课程编号 电话电话 4382 王大中王大中 男男 讲师讲师 00667 3565678 4382 王大中王大中 男男 讲师讲师 00789 3565678分为两个表:分为两个表:教师登记表:教师登记表:教工号教工号,姓名,性别,职称,电话,姓名,性别,职称,电话教师课程表:教师课程表:ID,教工号
16、,课程号教工号,课程号【注注】IDID是给教师课程表添加的主码。是给教师课程表添加的主码。则上例中数据放在两个表中:教工号教工号 姓名姓名 性别性别 职称职称 电话电话 ID 教工号教工号 课程号课程号4382 王大中王大中 男男 讲师讲师 3565678 1 4382 00667 2 4382 00789 本讲首页本讲首页S6:确定表间的联系:确定表间的联系学生登记表学生登记表教师登记表教师登记表课程名称表课程名称表学生成绩表学生成绩表课程号课程号学号学号课程号课程号教师授课表教师授课表教工号教工号教工号教工号3.3 3.3 数据库的创建与打开数据库的创建与打开 两两种种创创建建数数据据库库
17、的的方方法法:使使用用数数据据库库向向导导创创建建数数据据库库及及表表,查查询询等等各各种种对对象象 先先创创建建空空数数据据库库,然然后后再再分分别别添添加加对对象象 1.1.Microsoft Access对话框对话框Access启动时自动弹出建空库启动向导打开库动 2.2.创建空白数据库创建空白数据库动 3.3.使用向导创建数据库使用向导创建数据库 选择打开方式可直接打开的库打开命令 4.4.打开数据库的命令方式打开数据库的命令方式 选择:选择:视图视图|工具栏工具栏|WebWeb收藏夹收藏夹工具条工具条单击:单击:收藏夹按钮右侧收藏夹按钮右侧收藏夹内容收藏夹内容列表列表选择:选择:列表
18、:列表:添至收藏夹添至收藏夹收藏夹内收藏夹内容列表容列表当前数据当前数据库名称库名称 5.5.使用收藏夹打开数据库(对象)使用收藏夹打开数据库(对象)6.6.使用快捷方式打开数据库使用快捷方式打开数据库 本讲首页本讲首页4.4 4.4 使用向导创建表使用向导创建表 1.1.创建创建表的过程表的过程表:表:关系型数据库的基本结构。在关系型数据库的基本结构。在AccessAccess中,表是一种中,表是一种关系特定主题的数据集合,如产品,供应商等。每个关系特定主题的数据集合,如产品,供应商等。每个主题对应单个表。主题对应单个表。表的形式:表的形式:记录,字段组成的二维表格。记录,字段组成的二维表格
19、。创建一个表的过程:创建一个表的过程:创建表的结构:定义字段名,字段的类型,宽度等定义字段名,字段的类型,宽度等 填充表中的数据:各类不同数据类型的字段的填充方各类不同数据类型的字段的填充方式不尽相同式不尽相同 根据表与表间的共有字段根据表与表间的共有字段建立联系Access 提供多种创建表的方法提供多种创建表的方法 2.2.表的两种视图表的两种视图表的两种视图:表的两种视图:设计视图:设计视图:创建及编辑表的结构,即定义字段名,数创建及编辑表的结构,即定义字段名,数据类型,宽度,设置字段默认值,格式等据类型,宽度,设置字段默认值,格式等 数据表视图:数据表视图:查看,添加,删除,编辑表中数据
20、。查看,添加,删除,编辑表中数据。表视图设计视图 3.3.新建表对话框新建表对话框启动表向导打开设计视图动 4.4.使用向导创建表的例子使用向导创建表的例子一般步骤一般步骤启动向导启动向导选择字段选择字段修改字段名称修改字段名称确定表名确定表名确定主码确定主码完成完成 本讲首页本讲首页4.5 4.5 字段的定义字段的定义 字段:字段:数据库操纵最小数据库操纵最小单位。设计表实际上单位。设计表实际上是设计字段。其他对是设计字段。其他对象的设计重心都是存象的设计重心都是存取或使用字段的数据取或使用字段的数据字段基本属性:字段基本属性:字段名、字段名、数据类型、字段说明、数据类型、字段说明、及数据存
21、储使用方式及数据存储使用方式字段查阅属性:字段查阅属性:显示格显示格式、掩码、默认值、式、掩码、默认值、有效性规则等有效性规则等 字段说明在状字段说明在状态栏中显示态栏中显示字段名字段名与标题与标题 1.1.字段名与字段说明字段名与字段说明 Access 2000Access 2000中字段可用的数据类型有以下几种:中字段可用的数据类型有以下几种:文本文本(Text):文本、文本与数字、不必计算的数字,最文本、文本与数字、不必计算的数字,最长长255255个字符。个字符。备注备注(Memo):较长的文本,最长较长的文本,最长64,00064,000字符。字符。数字数字(Number)型:型:用
22、于算术运算的数字。可在用于算术运算的数字。可在“字段字段大小大小”中分字节、整型、单精度等子类型中分字节、整型、单精度等子类型 日期及时间日期及时间(Date/Time)(Date/Time):从从100100到到99999999的日期及时间值。的日期及时间值。可进行日期及时间的计算。可进行日期及时间的计算。8 8字节字节 货币货币(Currency):货币值。使用货币类型可避免计算时货币值。使用货币类型可避免计算时四舍五入。四舍五入。8 8字节字节 自动编号自动编号(AutoNumber):添加记录时的自动序号添加记录时的自动序号 递增:递增:添一条记录,字段值增添一条记录,字段值增1 1;
23、随机:随机:添一条记录,字段值为另一随机数。添一条记录,字段值为另一随机数。2.2.字段的数据类型字段的数据类型 是是/否否(Yes/No):取两种值之一,如取两种值之一,如 Yes/NoYes/No、True/FalseTrue/False、On/OffOn/Off。大小为。大小为1 1位。位。OLEOLE对象对象(Object):可链接或嵌入其他使用可链接或嵌入其他使用OLE OLE 协议的程协议的程序所创建的对象,如序所创建的对象,如WordWord文档、图象、声音等。最多文档、图象、声音等。最多1G1G。对象可链接或嵌入到。对象可链接或嵌入到AccessAccess表中。但只能在窗体表
24、中。但只能在窗体或报表中使用绑定对象框来显示。或报表中使用绑定对象框来显示。超链接超链接(Hyperlink):超文本,用作超链接地址。超链接超文本,用作超链接地址。超链接最多包含三部分:最多包含三部分:显示文本:显示文本:在字段或控件中显示的文本;在字段或控件中显示的文本;地址:地址:到文件(到文件(UNCUNC)或页面()或页面(URLURL)的路径;)的路径;子地址:子地址:在文件或页面中的地址。在文件或页面中的地址。查阅向导查阅向导(Lookup Wizard):由查阅向导创建。字段的由查阅向导创建。字段的值来自另一个表或数据列表中,可在列表框或组合框值来自另一个表或数据列表中,可在列
25、表框或组合框中选择一个数据作为其值。中选择一个数据作为其值。3.3.字段的字段的“常规常规”属属性性 字段大小:字段大小:文本长度文本长度或数值范围或数值范围 格式:格式:NumberNumber、Date/TimeDate/Time、CurrencyCurrency和和Yes/NoYes/No类类型有预定义格式,也型有预定义格式,也可设置格式可设置格式 小数位数:小数位数:小数型小数型(数字、货币)数据(数字、货币)数据的小数位的小数位 输入法模式:输入法模式:可设为可设为输入时自动切换到某输入时自动切换到某种输入法种输入法 输入掩码:输入掩码:输入数据时的格式,可用输入数据时的格式,可用“
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库 原理 应用 _CH4
限制150内