Access数据库创建、使用与管理从新手到高手
上QQ阅读APP看书,第一时间看更新

4.5 设置数据的验证规则

“验证规则”功能用于限制用户可以在表中输入哪些数据。当输入无效数据时显示提示信息,并要求用户更正数据,从而只将符合要求的数据输入表中。字段的“验证规则”和“验证文本”两个属性用于实现这项功能。自动编号、OLE对象、附件、同步复制ID等数据类型的字段不支持验证规则。

4.5.1 设置验证规则的基本方法

验证规则是一个表达式,用于检查用户输入的数据是否符合表达式中指定的条件。如果符合条件,则表达式返回True,此时可以将用户输入的内容添加到表中;如果不符合条件,则表达式返回False,此时会禁止用户将数据输入表中,并要求用户更正错误的数据。通常,用作验证规则的表达式的复杂程度取决于验证规则的复杂程度,验证规则中的条件越严格,其表达式就越复杂。

设置验证规则有以下两种方法:

  • 在数据表视图中单击要设置验证规则的字段所在列中的任意一个单元格,然后在功能区的“表格工具|字段”选项卡中单击“验证”按钮,在弹出的菜单中选择“字段验证规则”命令,如图4-42所示,在打开的“表达式生成器”对话框中输入验证规则表达式。该对话框与4.2.11节介绍“计算”数据类型时使用的“表达式生成器”对话框相同。

图4-42 选择“字段验证规则”命令

  • 在设计视图中单击要设置验证规则的字段所在行中的任意一个单元格,然后在“常规”选项卡中单击“验证规则”属性右侧的文本框,并输入验证规则表达式。单击该文本框右侧的按钮,也将打开“表达式生成器”对话框。

提示:表达式的更多内容将在第9章进行介绍

4.5.2 在性别中只允许输入“男”或“女”

在输入客户、员工、学生等人员的基本信息时,“性别”只能是“男”或“女”,为了避免输入无效内容,可以利用“验证规则”功能进行限制,操作步骤如下:

(1)在设计视图中打开要设置的表,单击“性别”字段所在行中的任意一个单元格,然后在“常规”选项卡中进行以下两项设置,如图4-43所示。

  • 单击“验证规则”属性右侧的文本框,然后输入下面的表达式。
  • 单击“验证文本”属性右侧的文本框,然后输入“只能输入男或女”。
     "男"or"女"

(2)保存对表设计的修改,然后切换到数据表视图,当在“性别”字段中输入的不是“男”或“女”时将显示如图4-44所示的提示信息,只有更正错误才能将数据输入单元格中。

图4-43 设置“性别”字段的验证规则

图4-44 禁止输入不符合条件的内容并显示提示信息

4.5.3 只允许输入不超过当天日期的出生日期

在输入人员的出生日期时,为了防止输入还没到来的未来日期,可以利用“验证规则”功能对输入的日期进行限制,例如输入的日期不能超过当天的日期,其操作步骤如下:

(1)在设计视图中打开要设置的表,单击“出生日期”字段所在行中的任意一个单元格,然后在“常规”选项卡中单击“验证规则”属性右侧文本框中的按钮。

(2)打开“表达式生成器”对话框,在“表达式元素”列表框中选择“操作符”,然后在“表达式类别”列表框中选择“比较”,在“表达式值”列表框中双击“<=”符号,将小于等于号添加到上方的文本框中,如图4-45所示。

(3)在“表达式元素”列表框中双击“函数”,并选择展开后的“内置函数”,然后在“表达式类别”列表框中选择“日期/时间”,在“表达式值”列表框中双击Date函数,将该函数添加到上方的文本框中,并位于小于等于号的右侧,如图4-46所示。

(4)单击“确定”按钮,关闭“表达式生成器”对话框。

(5)在“常规”选项卡中单击“验证文本”属性右侧的文本框,然后输入“出生日期不能晚于今天”,如图4-47所示。

(6)保存对表设计的修改,然后切换到数据表视图,在“出生日期”字段中输入一个位于今天之后的日期,按Enter键时将显示如图4-48所示的提示信息,只有将日期改为今天之前的日期才能将日期输入单元格中。

图4-45 在表达式中添加比较运算符

图4-46 在表达式中添加内置函数

图4-47 设置不符合条件时显示的提示信息

图4-48 禁止输入不符合条件的日期