《《创建表间关系》PPT课件.ppt》由会员分享,可在线阅读,更多相关《《创建表间关系》PPT课件.ppt(16页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、3.7 3.7 关联关联关联的概念 关联:使不同工作区的记录指针建立起一种制约或联动关系,使一个表的记录指针移动时另一个表的记录指针能随之移动,或当一个表的记录更新、删除时另一个表记录的处理方式。表的关联分为永久关联和临时关联。3.7.1 永久性关联永久关联的概念(P109)在“数据库设计器”中,通过链接不同表的索引建立表之间的关系,这种在数据库中建立的关联被作为数据库的一部分保存起来,所以称为永久关联。n 永久关联对表的要求永久关联对表的要求 建立关联的两个表必须在建立关联的两个表必须在同一数据库同一数据库中,并确定一个中,并确定一个表为主动表表为主动表(为主表或父表为主表或父表),另一个表
2、为被动表,另一个表为被动表(子表子表)两个表要具有两个表要具有相同属性的字段相同属性的字段,并且每个表都要以该,并且每个表都要以该字段建立索引。其中主表中的字段字段建立索引。其中主表中的字段(称主关键字称主关键字)建立的建立的索引必须是索引必须是主索引或候选索引主索引或候选索引,子表中的字段,子表中的字段(外部键关外部键关键字键字)可建立任意索引。可建立任意索引。建立永久关联 建立或打开数据库建立或打开数据库 添加表添加表 建立索引建立索引 用鼠标将主表中主索引或候选索引拖到子表中用鼠标将主表中主索引或候选索引拖到子表中相匹配相匹配的索引上的索引上 永久关联中关系的两种类型 一对一关系:子表关
3、联字段索引为主索引或候选索引 一对多关系:子表关联字段索引为普通索引或唯一索引n 选选 择择 关系:关系:单击关系线。单击关系线。n 编编 辑辑 关系:关系:重新确定两表之间建立关系的关键字段,实重新确定两表之间建立关系的关键字段,实现两表间以新的关键字段建立关系。现两表间以新的关键字段建立关系。n 数据库属性:数据库属性:隐藏与显示所有的表及关联线隐藏与显示所有的表及关联线n 删删 除除 关系:关系:右键单击关联线右键单击关联线选择选择“删除关系删除关系”3.7.2 数据表之间的参照完整性设置参照完整性的概念 所谓参照完整性,简单地说就是控制数据一致性,尤其是不同表之间关系的规则。建立永久关
4、联的目的:利用关联表之间的制约机制互相参照,控制表间数据的一致性和完整性。这种制约机制会在用户执行插入、修改或删除记录等编辑记录的操作时,发挥其限制作用。参照完整性有效限制了对表中数据的非法编辑。具体说参照完整性是指不允许在相关数据表中引用不存在的记录。编辑关系的参照完整性清理数据库:通过清理数据库:通过“数据库数据库”菜单操作,即执行菜单操作,即执行packpack命命令令选中数据库中的某个关系线选中数据库中的某个关系线选定选定“数据库数据库”菜单或关联线的快捷菜单中菜单或关联线的快捷菜单中“编辑参编辑参照完整性照完整性”命令,打开参照完整性生成器对话框命令,打开参照完整性生成器对话框设定更
5、新规则、删除规则(逻辑删除)及插入规则设定更新规则、删除规则(逻辑删除)及插入规则参照完整性的浏览设置的参照完整性规则会写到相应的表触发器中。参照完整性的规则:更新规则:主表关键字段值被改时,对子表相应关键字 段值的更新制约机制。删除规则:主表记录删除时,对子表关键字相匹配的记 录的制约机制。插入规则:向子表插入记录的制约机制。3.7.3 临时性关联(P84)临时关联的概念 临时关联是两个表之间在打开时建立的关联,当表关闭时不再保存。临时关联的目的 临时关联就是令不同工作区中的表记录指针建立一种临时的指针联动关系,使父表的记录指针移动时,子表的记录指针能随之移动到满足关联条件的记录上。n建立临
6、时关联对表的要求建立临时关联对表的要求 子表要按字段表达式建立索引并设置为子表要按字段表达式建立索引并设置为主控索引主控索引,而对父,而对父表关键字则不要求。表关键字则不要求。建立临时关联的两个表即可是数据库表,也可以是自由表。建立临时关联的两个表即可是数据库表,也可以是自由表。建立临时性关联1在数据工作期窗口建立关联(默认为多对一关系)(1)打开数据工作期窗口打开要关联的表(2)为子表建立索引或设置主控索引(3)选择主表单击“关系”按扭(4)选择子表选择关键字“确定”浏览临时关联表 同时浏览两个表,移动父表记录指针,观察子表记录指针的变化情况取消临时关联双击“关系”框中的子表,在出现的“表达
7、式生成器”对话框中删除关联条件(如“部门”),再单击“确定”按钮即可。2用命令来建立关联(多对一)格式:SET RELATION TO INTO ,INTO ADDITIVE功能:使当前表与其它表建立临时性关联说明:指定父表的字段表达式,值与子表的索引关键字对照;用工作区的别名说明子表;执行SET RELATION之前,子表必须设置为主控索引;一个数据表文件可与多个表文件相关联,可以用多条SET命令实现,在建立关联时,从第二个SET命令开始,要加上ADDITIVE 选项,否则将取消原有的关联;可以用SET RELATION TO命令解除当前表的所有关联;建立临时关联(多对一关系)select
8、2 use bmdm index on 代码 tag 代码 additive select 1 use sb set relation to sb.部门 into bmdm additive go 5 display 名称,bmdm.名称建立临时性关联3在数据工作期窗口建立关联(一对多关系)(1)打开数据工作期窗口打开要关联的表(2)为子表建立索引或设置主控索引(3)选择主表单击“关系”按扭(4)选择子表选择关键字“确定”(5)单击“一对多”按钮4.用命令来建立关联用命令来建立关联(一对多一对多)格式:格式:(1)SET RELATION TO INTO ,INTO ADDITIVE(2)(2
9、)SET SKIP TO SET SKIP TO 1,2说明一对多关说明一对多关系系 说明:说明:指子表或其所在工作区指子表或其所在工作区用用 SET SKIP TOSET SKIP TO 命令取消一对多关系。命令取消一对多关系。例:例:列出所有设备价格、增值和部门名。列出所有设备价格、增值和部门名。提示:涉及提示:涉及sb,zz,bmdmsb,zz,bmdm三个表三个表,sb,sb为主表,为主表,sbsb与与zzzz为一对多为一对多 关系,关系,sbsb与与bmdmbmdm为多对一关系。为多对一关系。命令序列命令序列 select 2 use bmdm set order to tag 代码
10、代码 select 3 use zz index on 编号编号 tag bh select 1 use sb set relation to sb.部门部门 into bmdm(多对一多对一)set relation to sb.编号编号 into zz additive set skip to zz(一对多)(一对多)browse fields 编号编号,价格价格,zz.增值增值,bmdm.名称名称:H=部门部门名名永久关系与临时关系的总结w永久关系是为实现关系的参照完整性,即不允许在相关表中引用不存在的记录;而临时关系是实现两表间记录指针跟随移动功能,即子表记录指针随主表指针改变而改变w永久关系是建立在同一数据库的两个表之间;而临时关系可建立在任意两个表之间。w永久关系和临时关系都要求两个表有相同类型的关键字。永久关系中,主表和子表都必须按关键字建立索引,且主表必须是主索引或侯选索引;而临时关系对主表关键字没要求,但子表必须按关键字建立索引并设置为主控索引。w永久关系可随数据库永久保存,而临时关系不能永久保存,关闭表后,临时关系也随之消失。