- 10
- 0
- 约8.45千字
- 约 49页
- 2016-12-03 发布于重庆
- 举报
VFP数据库
二、表之间的临时关系 p106 表间的永久性关系并不能使子表的记录指针随父表的记录指针产生联动 表间的临时关系可以实现两表间记录指针的连动。 例如,在浏览“学生”表的浏览窗口中,当光条移到某个学生记录上时,如果希望同时了解该学生的学习成绩,那么,可先在“学生”表与“成绩”表之间以“学号”字段为关联建立两表间的临时关系,同时打开两个浏览窗口;在“学生”表浏览窗口中移动当前记录时,即可看到“成绩”表浏览窗口中信息的连锁显示。 在建立了表间的临时关系后,父表可以控制子表。当在父表中移动记录指针时,子表中的记录指针也作相应移动。 1.?????? 创建表间的临时性关联 p.106 通过以下两种方法可以创建表间的临时性关联,在此仍以前面的“学生”表和“成绩”表为例加以说明。 (1)??? 通过“数据工作期”窗口创建表间的临时性关联。 (2)??? 通过命令SET RELATION也可创建表间的临时性关联。 (1)??? 通过“数据工作期”窗口创建表间的临时性关联。 主菜单“窗口”下选 “数据工作期”项 在数据工作期中: 打开要建立临时关联的表 选中主表 按数据工作期中的“关系”按钮 选择另一要关联的表 (2)_通过命令建立临时关联 P.107 格式: SET RELATION TO 关系表达式 INTO 表别名 其中: 两表关联的同名索引字段 另一被关联的表的别名 功能:当前表与另一个表之间建立临时关联 在使用上述命令之前,必须在子表上先建立与关系表达式相匹配的结构复合索引(.CDX)或独立索引(.IDX)。 (被关联的表要先建立索引,并打开索引) 1.?????? 解除表之间的临时性关联 P108 使用SET RELATION OFF命令可以实现解除表间的临时性关联。 格式: SET RELATION OFF INTO 工作区/表别名 或 SET RELATION TO USE 成绩 IN 1 USE 学生 IN 2 SELECT 成绩 SET ORDER TO TAG 学号 SELECT 学生 SET RELATION TO 学号 INTO 成绩 LOCA FOR 姓名=”王平” ?学号,姓名,成绩.课程号,成绩.成绩 学生表与成绩表关联 学号 姓名 性别 040101 章强 T 040102 王平 F 040103 周舟 T 学号 课程号 成绩 040101 0001 78 040101 0002 96 040102 0001 63 040103 0002 77 练习: 用SET RELATION命令将成绩表与课程表建立临时关联,输出学号为“020102”的同学的相关数据 学号,课程号,课程名,成绩 SELE 1 USE 课程 SELE 2 USE 成绩 SET ORDER TO TAG 课程号 IN 1 SET RELATION TO 课程号 INTO 课程 LOCA FOR 学号=“020102” ?学号,课程号,课程.课程名,成绩 姐一直被模仿,却从未被超越 姐一直被模仿,从未被超越 6.3 有效性、触发器与参照完整性 Page. 有效性 字段级有效性规则 在数据库表设计器的“规则”项中,直接输入当前字段的一条有效性规则,并在“信息”框中输入出错提示信息 (如限制成绩必须在0~100之间) 表的记录级有效性规则 (1)?? 表的记录级有效性规则可以在同一条记录的多个字段间进行比较,完成有效性规则的约束。 设置方法 : 在数据库表设计器的“表”选项卡中,直接在“规则”栏中输入一条有效性规则,并在“信息”框中输入出错提示信息 触发器 当表中的任何记录被指定的操作命令修改时,在执行了字段级、记录级、主关键字等有效性检查后,触发器被激活。 利用触发器的工作原理,可以完成特殊的数据检验、参照完整性实施及数据库更新的维护操作等许多功能。 触发器分为插入触发器、更新触发器和删除触发器三种, 分别对应于数据库表记录的插入、更新和删除操作 触发器相当于一个过程或一个子程序,用于检查数据处理是否正确 参照完整性 数据库的参照完整性是数据库系统必须保障的,实施参照完整性可以有效地维护数据库中多个表的关联。 如果为数据库设置了参照完整性规则,当输入、删除或更新记录时,可以保证数据库表中数据的有效性和一致性,从而防止出现下列几种问题: l????? 当父表中没有关联记录时,将记录添加到相关子表中,造成子表中出现“孤立”记录。 l????? 改变父表关键字值,而子表未作相应的改变,造成子表中出现“孤立”记录。 删除父表记录,而子表未作相应的
原创力文档

文档评论(0)