表设计
使用输入掩码控制数据输入格式
2017-05-11 17:07:56

    当有多人输入您的 Access 数据库中的数据时,您可以定义如何用户必须帮助保持一致性并使数据库更易于管理的特定字段中输入数据。例如,您可以设置窗体的输入的掩码,以便用户可以仅在瑞典语格式或地址以法语格式输入电话号码。您可以设置特定格式的输入掩码,并选择另一种格式,以便以不同方式显示相同的数据。

关于输入掩码

        首先介绍您可能需要使用输入掩码的位置和时间。您可以向表字段、查询以及窗体和报表控件添加输入掩码。

        例如,您可以为日期/时间字段中的表,或文本框控件绑定到日期/时间字段的窗体上添加输入的掩码。您还可以添加输入的掩码,窗体控件,如文本框绑定到表字段设置为这些数据类型。

        通过使用字符和符号输入的掩码提供在字段中输入数据设置格式。输入的掩码应用到域时,输入该字段中的数据的任何人必须按照定义输入掩码的特定模式。例如,如果数据库用户输入电话号码不带区号,在此特定的掩码(_) 555-0187 xt。___用户将无法保存数据,直到添加区号数据。具体的行为取决于如何输入掩码将设置为数据库设计器。

        输入掩码提供了大量数据验证,可防止用户输入无效数据(如在日期字段中输入电话号码)。输入掩码也可以帮助确保用户按照一致的方式输入数据。这种一致性可以使查找数据和维护数据库更加简便。

        请记住,您可以通过定义输入掩码来控制在数据库中输入数据时使用的格式,但是可以对相同数据应用另一种格式以更改数据的显示方式。例如,输入掩码可以定义按某种格式(例如 YYYY.MM.DD)输入日期,但是让日期显示为 DD-MMM-YYYY。

输入掩码的三个部分

输入掩码由一个必需部分和两个可选部分组成,每个部分用分号分隔。每个部分的用途如下所示:

  • 第一部分是必需的。它包括掩码字符或字符串(字符系列)和字面数据(例如,括号、句点和连字符)。

  • 第二部分是可选的指的是嵌入的掩码字符和如何字段中存储。如果第二部分设置为0,字符数据存储在一起,和字符如果设置为1,仅显示和未存储。将第二部分设置为1 ,则可以保存数据库的存储空间。

  • 输入掩码的第三部分也是可选的,指明用作占位符的单个字符或空格。默认情况下,Access 使用下划线 (_)。如果希望使用其他字符,请在掩码的第三部分中输入。

例如,这是在美国格式中的电话号码输入的掩码: (999) 000 000; 0; 即︰

  • 该掩码使用了两个占位符字符 9 和 0。9 指示可选位(选择性地输入区号),而 0 指示强制位。

  • 输入掩码的第二部分中的 0 指示掩码字符将与数据一起存储。

  • 输入掩码的第三部分指定连字符 (-) 而不是下划线 (_) 将用作占位符字符。

定义输入掩码的字符

下表列出了输入掩码的占位符和字面字符,并说明了它如何控制数据输入:

字符

说明

0

用户必须输入一个数字(0 到 9)。

9

用户可以输入一个数字(0 到 9)。

#

用户可以输入一个数字、空格、加号或减号。如果跳过,Access 会输入一个空格。

L

用户必须输入一个字母。

?

用户可以输入一个字母。

A

用户必须输入一个字母或数字。

a

用户可以输入一个字母或数字。

&

用户必须输入一个字符或空格。

C

用户可以输入字符或空格。

. , : ; - /

小数分隔符、千位分隔符、日期分隔符和时间分隔符。您选择的字符取决于 Microsoft Windows 区域设置。

>

其后的所有字符都以大写字母显示。

<

其后的所有字符都以小写字母显示。

!

导致从左到右(而非从右到左)填充输入掩码。

\

逐字显示紧随其后的字符。

""

逐字显示括在双引号中的字符。

向表字段添加输入掩码

您可以对设置为文本、数字(ReplicationID 除外)、货币和日期/时间数据类型的字段使用输入掩码。

注意: 如果对日期/时间字段使用输入掩码,则日期选取器控件将对该字段不可用。

  1. 在导航窗格中,右键单击表,然后单击快捷菜单上的“设计视图”。

  2. 单击要添加输入掩码的字段。

  3. 在“字段属性”下的“常规”选项卡上,单击“输入掩码”属性框。

  4. 单击生成按钮  以启动输入掩码向导。

  5. 在“输入掩码”列表中,选择要添加的掩码的类型。

  6. 单击“尝试”,并输入数据以测试掩码如何显示。

  7. 要保留输入掩码而不做任何更改,单击“下一步”。

  8. 选择希望如何存储数据的选项。

  9. 单击“完成”保存更改。

向查询中添加输入掩码

  1. 在导航窗格中,右键单击要更改的查询,然后单击快捷菜单上的“设计视图”。

  2. 在查询设计网格中,将指针放在要更改的字段所在的列中。

    可以将光标放在该字段所在的任何行中。

  3. 按 F4 打开该字段的属性表。

  4. 在“字段属性”下的“常规”选项卡上,单击“输入掩码”属性框。

  5. 构建按钮  以启动输入掩码向导中,单击,然后按照向导中的说明进行操作。

向窗体或报表控件添加输入掩码

  1. 在导航窗格中,右键单击要更改的窗体或报表,然后单击快捷菜单上的“设计视图”。

  2. 右键单击要更改的控件,然后单击快捷菜单上的“属性”。

  3. 在“全部”选项卡上,单击“输入掩码”属性框。

  4. 构建按钮  以启动输入掩码向导中,单击,然后按照向导中的说明进行操作。

创建自定义输入掩码

    输入掩码向导提供的输入掩码可满足最常见的格式需求,但是有时候,您可能希望自定义输入掩码以更好地满足您的需要。可以通过从输入掩码向导更改预定义掩码或者手动更改要应用掩码的字段的输入掩码属性来自定义输入掩码。

从输入掩码向导自定义输入掩码

  1. 在设计视图中打开对象,然后单击要在其中添加自定义输入掩码的字段。

  2. 单击生成  以启动输入掩码向导。

  3. 单击“编辑列表”。

    自定义输入掩码向导”对话框随即出现。

  4. 使用字符和占位符中的说明文本框中输入新说明。

  5. 单击“掩码类型”向下箭头,然后选择合适的掩码类型。

  6. 单击“关闭”。新的输入掩码显示在列表中。

从字段属性设置自定义输入掩码

  1. 在导航窗格中,右键单击对象,然后单击快捷菜单上的“设计视图”。

  2. 单击要创建自定义输入掩码的字段。

  3. 在“字段属性”区域中,单击“输入掩码”文本框,然后键入您的自定义掩码。

  4. 按 Ctrl+S 保存所做的更改。

有关如何定义输入掩码的详细信息,请单击“输入掩码”属性框,然后按 F1。您必须为数字和货币字段手动键入输入掩码定义。

用输入掩码之前考虑使用情况

        通常最好考虑数据输入需求可能如何随着数据库增长而发生改变,下面提供了一开始可以考虑的一些问题:

  • 掩码将阻止用户输入必要数据吗? 例如,用户有时是否需要以其他地区的格式输入电话号码?

  • 掩码是否干扰显示格式设置?例如,切换到设计视图,并在包含您的输入的掩码的字段的格式属性中,键入此格式字符串︰ (& & &)。-。。在数据表视图中查看域时,您将看到如下所示的内容︰ (425 () 5) 55--1212年

  • 您计划在日期/时间字段上使用日期选取器吗? 如果计划使用,则不能向该字段应用输入掩码。

输入掩码示例

下表中的示例说明使用输入掩码的一些方法。

输入掩码

提供此类型的值

附注

(000) 000-0000

(206) 555-0199

在本例中,您必须输入区号,因为这一部分掩码(000,括在圆括号中)使用占位符 0。

(999) 000-0000!

(206) 555-0199( ) 555-0199

在本例中,区号部分使用占位符 9,因此区号是可选的。此外,感叹号 (!) 会导致从左到右填充掩码。

(000) AAA-AAAA

(206) 555-TELE

允许您将美国样式的电话号码中的 最后四位替换为字母。请注意,在区号部分使用占位符 0 会使区号成为强制的。

#999

-202000

任何正数或负数,不超过四个字符,不带千位分隔符或小数位。

>L????L?000L0

GREENGR339M3MAY R 452B7

强制字母 (L) 和可选字母 (?) 与强制数字 (0) 的组合。大于号强制用户以大写形式输入所有字母。若要使用这种类型的输入掩码,必须将表字段的数据类型设置为“文本”或“备注”。

00000-9999

98115-98115-3007

一个强制的邮政编码和一个可选的四数字部分。

>L<??????????????

MariaPierre

名字或姓氏中的第一个字母自动大写。

ISBN 0-&&&&&&&&&-0

ISBN 1-55615-507-7

书号,其中包含文本、第一位和最后一位(这两位都是强制的)、第一位和最后一位之间字母和字符的任何组合。

>LL00000-0000

DB51392-0493

强制字母和字符的组合,均采用大写形式。例如,使用这种类型的输入掩码可以帮助用户正确输入部件号或其他形式的清单。

关于为电子邮件地址使用输入掩码

        由于电子邮件地址所包含的字符数千变万化,输入掩码并不能很好地确保正确输入电子邮件地址。相反,我们建议使用“有效性规则”和“有效性文本”属性。

        下表所示的有效性规则确保电子邮件地址输入与一个或多个字符,然后"@"号,然后一个或多个字符,然后一段,然后一个或多个字符。例如,将允许tom@example.com ,但tom@example,comtom@example不会。如果输入与验证规则不匹配的电子邮件地址,Access 将不接受输入,并显示验证文本属性中的消息。如果在验证文本属性框中不输入任何文本,则 Access 会显示一般性的消息。

属性

设置

有效性规则

Is Null Or ((Like "*?@?*.?*") And (Not Like "*[ ,;]*"))

有效性文本可选)

请输入带“@”号和完整域名的电子邮件地址(例如“'frank@contoso.com”)。