200 likes | 414 Views
数据库应用基础. 第 5 章 数据的有效性控制. 第 5 章 数据的有效性控制. 5.1 输入掩码. 掩码 可用来 限制输入到字段中各位置的数值形式。 输入掩码由字面字符(如括号、句号和连字符)和掩码字符(用于指定可以输入数据的位置以及数据种类、字符数量)组成,控制能或不能在字段中输入哪些内容。. 5.1 输入掩码. 掩码 示例. 5.1 输入掩码. 输入掩码包含三部分,所有这些部分都用分号隔开。第一部分是强制的,其余部分是可选的。 美国英语格式输入电话号码的输入掩码 (999) 000-000;0;-
E N D
数据库应用基础 第5章 数据的有效性控制
5.1 输入掩码 • 掩码可用来限制输入到字段中各位置的数值形式。 • 输入掩码由字面字符(如括号、句号和连字符)和掩码字符(用于指定可以输入数据的位置以及数据种类、字符数量)组成,控制能或不能在字段中输入哪些内容。
5.1 输入掩码 • 掩码示例
5.1 输入掩码 • 输入掩码包含三部分,所有这些部分都用分号隔开。第一部分是强制的,其余部分是可选的。 • 美国英语格式输入电话号码的输入掩码 (999) 000-000;0;- • 第一部分定义掩码字符串,并由占位符和字面字符组成。 • 第二部分定义是否希望将掩码字符和任何数据一起存储到数据库中。如果希望同时存储掩码和数据,输入 0;如果只希望存储数据,输入1。 • 第三部分定义用来指示数据位置的占位符。默认情况下,Access 使用下划线 (_)。如果希望使用其他字符,可在掩码的第三部分输入该字符。 • 默认情况下,一个位置只接受一个字符或空格。
5.1字段有效性规则 • 在定义字段时,可利用字段有效性规则来限制用户在该字段中输入的数据,从而体现业务规则对数据的相应限制。 • 在字段的有效性规则属性中,可以采用表达式方式来描述对数据的限制。 • 有效性文本属性中的内容则是在系统对数据按有效性规则进行检查发现数据错误时的提示信息,该信息可由用户自行填写,否则将使用系统的默认提示信息。
表达式的主要成分 • 关系运算符 • 用来表示字段中的数据与给定值间存在的某种关系,这些符号是:=(等于)、<>(不等于)、>(大于)、<(小于)、>=(大于等于)、<=(小于等于)。当输入的数据满足指定的关系时,表达式成立,数据被有效接受。 • 逻辑运算符 • 用来连接多个关系,从而形成较复杂的规则,其常用符号为:OR(或)、AND(与)、NOT(非)。使用OR时,其前后一个关系成立即可;使用AND时,则要求其前后的关系都必须成立;使用NOT时,表示对其后的关系进行意义相反的处理。
表达式的主要成分 • 常量 • 表达式中有时会出现一些确定的值,这些值称为常量。不同类型的常量的表示方式也不同。例如: • 数字,可直接按常规数字形式书写;文本,用双引号括起来;日期,用一对井号 (#)把一串日期格式的数字括起来,日期的数字格式为:MM/DD/YYYY,也可以为:YYYY/MM/DD,等。 • 系统函数 • 在表达式中也可以使用系统函数,这些函数可以按指定方法进行计算并返回一个值。例如,Date()表示系统当天的日期;Now()表示系统当天的日期和时间; Year(Now())表示当前的年份。
创建于实施字段的有效性规则 • 可以利用表达式生成器创建表达式。 • 字段的有效性规则,被用于当用户录入或编辑了该字段中的数据,并打算离开该项时,对现数据的合法性进行检验,判断现数据是否符合有效性规则的要求。
5.3 记录(表)有效性规则 • 记录有效性规则是在表属性中设置的,所以也称为表有效性规则。 • 通常,记录(表)有效性规则会同时涉及到在同一个表内的若干个字段,以便判断当前记录中这些字段的值之间是否符合规则所描述的逻辑关系。
记录(表)有效性规则示例 • [性别]=“男” AND [身高]>=1.8 OR [性别]=“女” AND [身高]>=1.7 • 当输入的性别、身高值不符合上述有效性规则时,记录不能被保存,并且会出现相应提示。 • 在设计表时,进行记录(表)有效性规则的定义,当保存表时,记录(表)有效性规则也被保存起来,并且自动生效。 • 当完成了对一条记录的修改或添加新记录时,系统将按当前表的记录(表)有效性规则对将保存的记录中的数据进行强制性检验。 • 当描述记录(表)有效性规则的表达式成立时,系统将接受该记录中的数据,完成保存记录的任务。否则,当现有数据不符合有效性规则时,系统将发出警告,如果预先定义了有效性文本,该文本的内容将显示。
5.4 参照完整性 • 参照完整性是一个规则系统,数据库管理系统使用这个规则系统来确保相关表中记录之间联系的有效性,并且不会意外地删除或更改相关数据。 • 如果在数据库中为相关的表建立了参照完整性规则,系统将在相关表的数据发生变动时,自动进行参照完整性检查。对于一些会造成数据不一致的错误更新,即对一些违反参照完整性的错误操作,系统将拒绝接受这些操作的结果,并给出提示信息。
5.4 参照完整性 • 参照完整性是一个规则系统,数据库管理系统使用这个规则系统来确保相关表中记录之间联系的有效性,并且不会意外地删除或更改相关数据。 • 如果在数据库中为相关的表建立了参照完整性规则,系统将在相关表的数据发生变动时,自动进行参照完整性检查。对于一些会造成数据不一致的错误更新,即对一些违反参照完整性的错误操作,系统将拒绝接受这些操作的结果,并给出提示信息。 • 实施参照完整性的基础是定义关系。
5.4 .1 建立表之间的关系 • 选择在关系窗口中出现的相关表 • 定义表之间的联系 • 编辑联系 • 删除不需要的联系 • 保存关系
图 5.11 “联接属性”对话框 图 5.10 “编辑关系”对话框 定义表之间的联系 定义两表间如何联接 联接类型 实施参照完整性
5.4.2 参照完整性的实施情况 不能在相关表的外键字段中输入不存在于主表的主键中的值。 在没设“级联更新”情况下,如果在相关表中存在匹配的记录,则不能在主表中修改主键的值。 在没设“级联删除”情况下,如果在相关表中存在匹配的记录,则不能从主表中删除这个记录。 在设置“级联更新相关记录”情况下,如果在相关表中存在匹配的记录,系统将在主表中主键字段发生修改时,自动修改相关表中的对应外键字段的数据。 在设置“级联删除相关记录”情况下,如果在相关表中存在匹配的记录,系统将在从主表删除某记录时,自动删除与之相关的相关表中的那些记录。
5.5 表的查阅列 查阅列(或字段)也是表中的普通字段,与其它字段不同的是,它的值可以直接录入,也可以利用系统提供的查阅功能从另一个表或值列表中检索而来。 表中的一个列(字段)是否为查阅列,可以通过设置字段的“查阅”属性手动地设置。 在进行字段定义时,也可以通过“查阅向导”自动创建查阅列。
5.5.1 创建行来源类型为值列表的查阅列 将行来源类型选择为“值列表”时,表示查阅列将从用户事先输入的一组值中检索并接受特定的数据,这些数据出现在行来源框中。
5.5.2 创建行来源类型为表/查询的查阅列 将“行来源类型”选择为:表/查询,意味着将从另一个表或查询中获取所需的值。