第4章数据控制功能和表间关系.ppt
《第4章数据控制功能和表间关系.ppt》由会员分享,可在线阅读,更多相关《第4章数据控制功能和表间关系.ppt(44页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第4章数据控制功能和表间关系 Still waters run deep.流静水深流静水深,人静心深人静心深 Where there is life,there is hope。有生命必有希望。有生命必有希望4.2 4.2 与数据完整性控制有关的字段属性与数据完整性控制有关的字段属性u在前面,我们已经介绍了字段大小、格式、标题等字段属性。这里,我们将介绍与数据完整性控制有关的字段属性输入掩码、有效性规则和有效性文本。u这3个字段属性能够尽可能地确保进入数据库的数据是正确、有效的。4.2.1 4.2.1 输入掩码输入掩码使用输入掩码(Input Mask)字段属性,可以控制在表中字段的数据输入方
2、式。输入掩码使用一些特殊字符来规定输入某些必需的数据。如果学校对学号编码的统一规定是“学号至多由10个字符组成,且每个字符可以是阿拉伯数字,也可以是英文字母,但不可以是其他字符”,则需要将“学号”字段的“输入掩码”属性设置为“aaaaaaaaaa”(10个a)。这样,当输入具体学号时,每个字符或者是阿拉伯数字,或者是英文字母,而不能输入其他字符。输入掩码主要用于文本型字段和日期/时间型字段。字符说明0数字(0到9,必选项;不允许使用加号+和减号-)9数字或空格(可选项;不允许使用加号和减号)#数字或空格(可选项;空白将转换为空格,允许使用加号和减号)L字母(A到Z,必选项)?字母(A到Z,可选
3、项)A字母或数字(必选项)a字母或数字(可选项)密码文本框中键入的任何字符都按原字符保存,但显示为星号(*)4.2.2 4.2.2 有效性规则和有效性文本有效性规则和有效性文本有效性规则(Validation Rule)字段属性用于指定对输入到字段中的数据的要求,当输入的数据违反了有效性规则的设置时,可以使用有效性文本(Validation Text)向用户发送提示消息。对于有效性规则属性,需要输入一个表达式以代表一个条件;而对于有效性文本属性,则输入文本串以文字化提示消息。4.2.2 4.2.2 有效性规则和有效性文本有效性规则和有效性文本字段名称字段属性作用属性名称属性值学号输入掩码aaa
4、aaaaaaa只允许在“学号”中出现阿拉伯数字或英文字母性别有效性规则“男”or“女”只允许“性别”用“男”、“女”两个汉字中的一个表示性别有效性文本输入性别有误,请重新输入!如果试图输入除“男”或“女”之外的其他字符,则Access会给出相应的输入错误提示身份证号码输入掩码00000000000000000A“身份证号码”中的前17位必须是阿拉伯数字,最后1位允许是阿拉伯数字或英文字母入学成绩有效性规则0规定“入学成绩”必须大于零入学成绩有效性文本入学成绩至少应该大于零!如果试图输入小于等于零的“入学成绩”,则Access会给出相应的输入错误提示应交学费有效性规则0规定“应交学费”必须大于零
5、应交学费有效性文本学费应该大于零!如果试图输入小于等于零的“应交学费”,则Access会给出相应的输入错误提示【练习4-1(P54P54)】根据上表设置“花名册”表中相应字段的属性,然后在数据表视图中输入相应的数据并观察相应字段属性的作用。4.3 4.3 关系概念模型关系概念模型E-RE-R模型模型存储在数据库中的数据反映了现实的业务情况和状态,而现实的业务问题往往是抽象和复杂的。为了将复杂的现实业务问题抽象、组织和转化为RDBMS支持的关系模型,往往需要首先根据业务问题建立概念模型,然后再在概念模型的基础上建立关系模型。4.3.1 4.3.1 主要概念主要概念实体(Entity):客观存在并
6、可相互区别的事物称为实体。实体可以是具体的人和物(如学生、客户、供应商、产品、运货商),也可以是抽象的概念(如订单、课程)。属性(Attribute):实体所具有的某一特性或性质。一个实体所具有的特征或性质可以用若干个属性描述。如一个产品实体可以用编号、名称、供应商、单位数量、单价、库存量和订购量等属性来刻画。实体集(Entity Set):同类实体的集合。如各种产品实体就构成了一个产品实体集,所有客户就构成了一个客户实体集。实体型(Entity Type):具有相同属性的实体必然具有相同类别的特征和性质。用实体名及其属性名集合来抽象和刻画的同类实体,称为实体型。例如,对于产品实体集,可以用如
7、下实体型表示:产品(编号、名称、供应商、单位数量、单价、库存量、订购量)4.3.1 4.3.1 主要概念主要概念联系(Relationship):指同一实体型内部实体之间的联系,或指不同实体型之间通过实体发生的联系。4.3.2 4.3.2 关系概念模型的表示方法关系概念模型的表示方法E-RE-R图图概念模型:客观现实在人们头脑中的反映,是对客观事物及其联系的一种抽象描述。关系概念模型(简称关系模型):是关系数据库理论中描述客观事物及其联系的概念模型。实体联系方法(Entity-Relationship Approach,E-R方法):用E-R图描述现实世界的关系概念模型,也称为E-R模型(P.
8、P.S.Chen,1976)。E-R图可以描述实体型、实体型具有的属性、实体型之间的联系一级联系的类型等多种信息。E-R图中使用专门图形符号表示特定的含义:矩形框实体型,在矩形框内标明实体型名称。椭圆形实体的属性,在椭圆形内标明属性名,并用无向边将其与相应的实体矩形框连接起来。菱形联系,在菱形内标明联系名,并用无向边分别与有关的实体矩形框连接起来,表明联系的类型。如果一个联系也具有属性,则这些属性也要用无向边与该联系连接起来。4.3.2 4.3.2 关系概念模型的表示方法关系概念模型的表示方法E-RE-R图图设A、B为两个实体集,E-R图中表示实体型之间的三种联系:一对一联系(1:1):若对于
9、A中的每一个实体,在B中至多有一个实体与之联系;反之,对于B中的每一个实体,在A中也至多有一个实体与之联系,则称实体集A与B之间具有一对一联系,记为1:1。一对多联系(1:n):若对于A中的每一个实体,在B中有n个实体(n0)与之联系;反之,对于B中的每一个实体,在A中至多只有一个实体与之联系,则称实体集A与B之间具有一对多联系,记为1:n多对多联系(m:n):如果对于A中的每一个实体,在B中有n个实体(n0)与之联系;反之,对于B中的每一个实体,在A中也有m个实体(m0)与之联系,则称实体集A与B之间具有多对多联系,记为m:n。总经理公司任职11(a)一对一联系员工部门工作1n(b)一对多联
10、系学生班级隶属1n学生课程选修mn(c)多对多联系产品客户购买mn4.3.3 4.3.3 根据根据E-RE-R图设计关系模式图设计关系模式客户产品客户ID产品ID产品名称单位数量单价类别名称类别说明订购mn公司名称联系人姓名地址邮政编码电话发货日期订购日期到货日期数量单价产品名称产品ID单位数量公司名称客户ID客户产品客户ID产品ID产品名称单位数量单价类别名称类别说明订购mn公司名称联系人姓名地址邮政编码电话发货日期订购日期到货日期数量单价产品名称产品ID单位数量公司名称客户ID客户产品客户ID产品ID产品名称单位数量单价类别名称类别说明订购mn公司名称联系人姓名地址邮政编码电话发货日期订购
11、日期到货日期数量单价产品名称产品ID单位数量公司名称客户ID产品(产品(产品产品ID、产品名称、单位数量、单价、类别名称、产品名称、单位数量、单价、类别名称、类别说明)类别说明)客户(客户(客户客户ID、公司名称、联系人姓名、地址、邮编、电话)、公司名称、联系人姓名、地址、邮编、电话)订购(订购(客户客户ID、公司名称、公司名称、产品产品ID、产品名称、单位数量、产品名称、单位数量、单价、数量、订购日期、发货日期、到货日期单价、数量、订购日期、发货日期、到货日期)【练习4-2(P58P58)】根据如图4-5所示的E-R图设计关系模式。(1)根据实体型及其属性设计关于实体型的关系模式。(2)根据
12、实体型之间的多对多联系设计关系模式。4.3.3 4.3.3 根据根据E-RE-R图设计关系模式图设计关系模式将相关实体的某些属性放入同一个二维表中将产生数据冗余数据冗余(Data RedundancyData Redundancy),即同样的数据在同一张表中重复出现。数据冗余问题会占用更多的存储空间、造成存储空间的浪费,而且还可能引起数据的不一致性数据的不一致性问题。4.3.3 4.3.3 根据根据E-RE-R图设计关系模式图设计关系模式减少关系模式的数据冗余:选择相关实体的主键作为关系模式中的属性,并将它们的组合做为主键或主键的组成部分;保留多对多联系自身的属性。外键/外码(Foreign
13、Key):当某个属性(或属性组)不是关系R的主键或只是主键的一部分,但是另一个关系R的主键,则称该属性(或属性组)是关系R相对于关系R的外键/外码。客户产品客户ID产品ID产品名称单位数量单价类别名称类别说明订购mn公司名称联系人姓名地址邮政编码电话发货日期订购日期到货日期数量单价产品名称产品ID单位数量公司名称客户ID客户产品客户ID产品ID产品名称单位数量单价类别名称类别说明订购mn公司名称联系人姓名地址邮政编码电话发货日期订购日期到货日期数量单价产品ID客户ID订购(客户订购(客户ID、公司名称、产品、公司名称、产品ID、产品名称、单位数量、产品名称、单位数量、单价、数量、订购日期、发货
14、日期、到货日期)单价、数量、订购日期、发货日期、到货日期)订购(订购(客户客户ID、产品产品ID、单价、数量、单价、数量、订购日期订购日期、发货日期、到货日期)发货日期、到货日期)4.3.4 4.3.4 关系模式的优化关系模式的优化根据E-R图,可以得到实体型和多对多联系的关系模式:u客户(客户ID、公司名称、联系人姓名、地址、邮编、电话)u产品(产品ID、产品名称、单位数量、单价、类别名称、类别说明)u订购(客户ID、产品ID、单价、数量、订购日期、发货日期、到货日期)4.3.4 4.3.4 关系模式的优化关系模式的优化为了减少数据冗余,可将实体型中重复出现的属性值,且容易产生数据不一致性的
15、字段提取出来,构成一个新的实体型。同时,在新的实体型和提取的源实体型中添加关联属性。4.3.4 4.3.4 关系模式的优化关系模式的优化经过对关系模式的进一步优化,可以得到新的E-R图根据优化后的E-R图,为每个实体型设计关系模式:客户(客户ID、公司名称、联系人姓名、地址、邮编、电话)类别(类别ID、类别名称、类别说明)产品(产品ID、产品名称、单位数量、单价、类别ID)为“订购“多对多联系设计关系模式:订购(客户ID、产品ID、单价、数量、订购日期、发货日期、到货日期)客户产品客户ID产品ID产品名称单位数量单价类别ID订购mn公司名称联系人姓名地址邮政编码电话类别名称类别ID类别说明n1
16、包含类别发货日期订购日期到货日期数量单价客户ID产品ID注意注意:通常情况下,不需要为实体型之间的一对多联系建立专门的关系模式,可以通过关联属性建立联系。4.3.4 4.3.4 关系模式的优化关系模式的优化进一步减少数据冗余的操作:分析数据冗余提取重复出现的字段,构造新关系利用提取重复字段后剩下的字段再构造另一个新关系“订单”关系“订单明细”关系4.3.4 4.3.4 关系模式的优化关系模式的优化在两个关系中都添加关联字段,使两者相互联系,确保数据的完整性。优化后的关系模式:客户(客户ID、公司名称、联系人姓名、地址、邮编、电话)类别(类别ID、类别名称、类别说明)产品(产品ID、产品名称、单
17、位数量、单价、类别ID)订单(订单ID、客户ID、订购日期、发货日期、到货日期)订单明细(订单ID、产品ID、单价、数量)4.3.5 4.3.5 实体表与联系表实体表与联系表二维表是关系模型在关系数据库技术上的具体体现实体联系关系模型数据库实体表联系表客客户户IDID公司名称公司名称联联系人姓名系人姓名联联系人系人头衔头衔地址地址城市城市地区地区邮邮政政编码编码TRAIH伸格公司林小姐销售员石碑路甲 141 号深圳华南342356VAFFE中硕贸易苏先生销售经理威成路 321 号深圳华南837206VICTE千固苏先生销售代理明成西街 471 号秦皇岛华北598018VINET山泰企业黎先生结
18、算经理舜井街 561 号天津华北575909WANDK凯旋科技方先生销售代表使馆路 371 号天津华北212400雇员ID姓氏名字头衔尊称出生日期雇用日期地址城市1张颖销售代表女士1968-12-81992-5-1复兴门 245 号北京2王伟副总裁(销售)博士1962-2-191993-1-14罗马花园 890 号北京3李芳销售代表女士1973-8-301992-4-1芍药园小区 78 号北京4郑建杰销售代表先生1968-9-191993-5-3前门大街 789 号北京5赵军销售经理先生1965-3-41993-10-17学院路 78 号北京订单订单IDID客客户户IDID雇雇员员IDID订购
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据 控制 功能 关系
限制150内