已阅读5页,还剩13页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第11章 数据完整性与表间关系,11.1 实体完整性与主索引 11.2 字段级有效性 11.3 记录有效性 11.4 存储过程 11.5 触发器 11.6 参照完整性与表间关系,11.1 实体完整性与主索引,在Visual FoxPro中,把主索引的索引表达式当作主关键字,把候选索引的索引表达式当作候选关键字,以此来保证实体完整性。在一个表中,主关键字和候选关键字的值不能重复,从而保证了记录的唯一性。,11.2 字段级有效性,字段级的有效性约束条件是为保证输入到字段的值的合法性。例如,在图书表中,我们可以限制图书的“定价”必须大于0,“书名”不能为空等。 在Visual FoxPro中设置字段级有效性规则的方法是:在表设计器的“字段”选项卡的“字段有效性”框中输入规则表达式、信息提示和默认值。,11.2 字段级有效性(续1),在表设计器中,进入“字段”选项卡,选择需要设计字段有效性规则的字段。 然后在“字段有效性”区的“规则”框中输入规则表达式。例如:.NOT. Empty(书名)、定价0。 可以在“信息”框中输入错误提示信息。例如,“书名不能为空!”或“定价不能为零或负数”。,11.2 字段级有效性(续2),11.3 记录有效性,11.3 记录有效性(续),记录有效性和字段有效性的两个主要区别: 1.两个规则约束的字段数不同。记录有效性规则可以同时约束多个字段;而字段有效性则只对一个字段有约束。 2.两个规则发生的时机不同。记录有效性规则在记录值改变时发生作用;而字段级有效性在光标移开被约束的、且更新了数据的字段时发生作用。,11.4 存储过程,用于数据库描述的、用户自定义的函数和过程称为存储过程,存储过程是数据库的一个组成部分。可用下列方法之一来建立、打开、和编辑存储过程:,在“项目管理器”中,选择并展开一个数据库,选定“存储过程”,然后单击【新建】或【修改】按钮。 进入“数据库设计器”,依次单击菜单栏上的【数据库】【编辑存储过程】命令。 在“命令”窗口中,使用MODIFY PROCEDURE命令。,11.4 存储过程(续),例子:编写一个存储过程来实现记录级有效性检查工作。 实现方法: 在存储过程中,编写CheckBookRecord()函数来判断记录的有效性,并把具体的错误信息放在BookTableErrorStr全局变量中;编写GetErrorStr()函数返回BookTableErrorStr的值。,11.5 触发器,触发器是在一个在插入、更新或删除操作之后自动运行的记录级事件代码。这三种触发器分别称为“插入触发器”、“更新触发器”和“删除触发器”。 这种记录级事件代码编制成函数或过程,存入数据库中,成为存储过程。例如,我们可以为销售表编写一个这样的“插入触发器”,起名为“SaleInsertTrigger()”。 可以在表设计器的“表”选项卡中,填写触发器函数的名称,11.5 触发器(续),插入触发器:当记录新增后,记录指针离开插入的这条记录时 更新触发器:当修改过字段数据后,记录指针移动时 删除触发器:当执行删除命令删除记录时。,三种触发器的激活时机如下:,有效性规则和触发器的激活顺序:,(1)字段级有效性规则 (2)记录级有效性规则 (3)触发器,11.6 参照完整性与表间关系,11.6.1 表间关系 11.6.2 建立参照完整性,11.6.1 表间关系,通过表间关系可以反映和维护两个实体型之间的语义关系。 建立这种表间关系的方法是:分别在两个表的相同字段上建立主索引(或候选索引)和普通索引,然后在数据库设计器中将这两个索引连接起来。,两表之间往往是通过一组相同的字段建立表间关系。对这组字段有如下要求:,这组字段在一个表中是关键字,即依据这组字段建立了主索引或候选索引。 另一个表也依据这组字段建立了索引,索引类型可以是主索引、候选索引或普通索引。,11.6.1 表间关系(续),11.6.2 建立参照完整性,11.6.2 建立参照完整性(续1),1、更新规则,级联:当父表中的关键字值改变时,用新的关键字值更新子表中的所有相关记录。 限制:对于父表中的一条记录,若子表中有相关记录,则禁止更改父表中这条记录的主关键字段或候选关键字段中的值,这样在子表中就不会出现孤立的记录。,11.6.2 建立参照完整性(续2),2删除规则,级联:在父表中进行的删除在相关的子表中反映出来,也就是说,当删除父表中的记录时,相关子表中的记录自动删除。 限制:对于父表中的一条记录,如果在子表中有相关的记录时,则在父表中不允许删除这条记录。,11.6.2 建立参照完整性(续3),3插入规则,插入规则是指当用户要向子表中插入记录时,或者在子表中更新已存在的记录时,是否进行参照完整性检查。,限制:若要在子表中插
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024-2025学年新教材高中历史第四单元资本主义制度的确立第9课资产阶级革命与资本主义制度的确立梯度作业练素能含解析新人教版必修中外历史纲要下
- 彩妆培训合同范例
- 威海农村房屋出售合同模板
- 房租无偿租赁合同模板
- 农村房屋商用租赁合同范例
- 床褥销售合同范例
- 双方合租合作合同范例
- 差额结算合同范例
- 奖品采购合同模板
- 2024年天津客运从业资格证试题下载
- 行为金融学中国大学mooc课后章节答案期末考试题库2023年
- 中图版八年级地理上册《世界气候》复习课件
- 家族财富传承法商
- 无损检测通用作业指导书
- 2023年中考语文复习:150个文言实词-课件(共183张PPT)
- 蛋糕经济学:如何实现企业商业价值和社会责任的双赢
- 车辆维修服务方案先进性
- 2020年1月上海春招英语听力(含试题、MP3、答案及录音)
- GB/T 17639-2023土工合成材料长丝纺粘针刺非织造土工布
- 发行企业债法律尽职调查之访谈问题清单
- 拍卖合作协议
评论
0/150
提交评论