更新数据时的设计注意事项

注意: 我们希望能够尽快以你的语言为你提供最新的帮助内容。 本页面是自动翻译的,可能包含语法错误或不准确之处。 我们的目的是使此内容能对你有所帮助。 可以在本页面底部告诉我们此信息是否对你有帮助吗? 请在此处查看本文的英文版本以便参考。

设计良好的数据库不仅有助于确保数据完整性, 而且更易于维护和更新。 Access 数据库不是与 microsoft Word 文档或 microsoft PowerPoint 幻灯片板上的文件相同的文件。 它是对象 (表、窗体、报表、查询等) 的集合, 必须协同工作才能正常运行。

用户主要通过控件输入数据。 对给定控件所执行的操作取决于为基础表字段设置的数据类型、为该字段设置的任何属性以及为该控件设置的属性。 最后, 请考虑使用其他数据库技术, 如验证、默认值、列表和查找以及级联更新。 

有关从用户的观点更新数据的详细信息, 请参阅添加、编辑和删除记录的方法

本文内容

数据库设计如何影响数据输入

数据库中保存的信息存储在中, 其中包含有关特定主题 (如资源或联系人) 的数据。 表中的每条记录包含有关一个项目 (如特定联系人) 的信息。 记录由字段(如姓名、地址和电话号码) 组成。 记录通常称为行, 字段通常称为列。 这些对象必须遵循一组设计原则, 否则数据库将工作得不太好或全部失败。 这些设计原则反过来会影响您输入数据的方式。 请考虑以下事项:

  • 表格    Access 将所有数据存储在一个或多个表中。 使用的表数取决于数据库的设计和复杂性。 虽然您可以查看窗体、报表或查询返回的结果中的数据, 但 Access 仅存储表中的数据, 并且数据库中的其他对象基于这些表构建。 每个表格都应基于一个主题。 例如, 业务联系人信息表不应包含销售信息。 如果这样做, 查找和编辑正确的信息可能会变得很困难 (如果不可能)。

  • 数据类型    通常, 表中的每个字段仅接受一种类型的数据。 例如, 不能将笔记存储在设置为接受数字的字段中。 如果尝试在此类字段中输入文本, Access 会显示一条错误消息。 但是, 这并不是很难和快速的规则。 例如, 你可以在设置为 "短文本" 数据类型的字段中存储数字 (如邮政编码), 但不能对该数据执行计算, 因为 Access 会将其视为一段文本。

    除了某些例外, 记录中的字段应仅接受一个值。 例如, 您不能在一个地址字段中输入多个地址。 这与 Microsoft Excel 相反, 这使你可以在单个单元格中输入任意数量的名称或地址或图像, 除非将该单元格设置为接受有限类型的数据。 

  • 多值字段    Access 提供了一个名为多值字段的功能, 可将多个数据片段附加到单个记录, 并创建接受多个值的列表。 你始终可以标识多值列表, 因为 Access 会显示每个列表项旁边的复选框。 例如, 你可以将 Microsoft PowerPoint 幻灯片面板和任意数量的图像附加到数据库中的记录。 您还可以创建名称列表, 并根据需要选择这些名称中的任意多个。 使用多值字段似乎会破坏数据库设计的规则, 因为你可以为每个表字段存储多个记录。 但 Access 通过将数据存储在特殊的隐藏表中来强制执行 "幕后" 规则。

  • 使用窗体    通常, 你可以在希望使数据库更易于使用时创建窗体, 并帮助确保用户准确地输入数据。 如何使用窗体编辑数据取决于窗体的设计。 窗体可以包含任意数量的控件, 如列表、文本框、按钮甚至是数据表。 反过来,窗体上的每个控件都从基础表字段读取数据或将数据写入基础表字段。

有关详细信息, 请参阅数据库设计基础知识创建表并添加字段

返回页首

为字段或控件设置默认值

如果大量记录为给定字段 (如城市或国家/地区) 共享相同的值, 则可以通过为绑定到该字段的控件或字段本身设置默认值来节省时间。 当您打开窗体或表以创建新记录时, 默认值将出现在该控件或字段中。

在表中

  1. 在“设计视图”中打开表。

  2. 在视图顶部, 选择字段。

  3. 在视图底部, 选择 "常规" 选项卡。

  4. 将 "默认值" 属性设置为所需的值。

在窗体中

  1. 在 "布局" 或 "设计" 视图中打开窗体。

  2. 右键单击要处理的控件, 然后单击 "属性"。

  3. 在 "数据" 选项卡上, 将 "默认值" 属性设置为所需的值。

返回页首

使用有效性规则限制数据

在 Access 桌面数据库中使用验证规则输入数据时, 您可以验证这些数据。 可在表格设计或表格数据表视图设置验证规则。 Access​​ 中有三种类型的验证规则:

  • 字段验证规则    可以使用字段验证规则指定所有有效的字段值必须满足的条件。 不需要将当前字段指定为规则的一部分,除非将在函数中使用该字段。 要在字段中输入的对字符类型的限制可能通过输入掩码会更容易实现。 例如,日期字段可能具有一个禁止使用过去日期值的验证规则。

  • 记录有效性规则    可以使用记录验证规则指定所有有效记录必须满足的条件。 可以使用记录验证规则比较不同字段间的值。 例如, 具有两个日期字段的记录可能要求一个字段的值始终位于另一个字段的值之前 (例如, 开始日期早于结束日期之前)。

  • 表单上的验证    你可以使用窗体上的控件的 "验证规则" 属性来指定所有值输入到该控件的条件必须满足。 “验证规则”控件属性的工作方式类似于字段验证规则。 如果规则只特定于该表单而不是该表格,则无论在何处使用,通常都会使用表单验证规则而非字段验证规则。

有关详细信息, 请参阅使用有效性规则限制数据输入

返回页首

使用值列表和查找字段

Access 中有两种类型的列表数据:

  • 值列表    这些值包含手动输入的一组硬编码值。 值位于字段的 "行来源" 属性中。

  • 查找字段    这些使用查询来检索另一个表中的值。 字段的 "行来源" 属性包含查询, 而不是值的硬编码列表。 查询检索数据库中一个或多个表中的值。 默认情况下, 查阅字段以列表的形式显示这些值。 根据您设置查阅字段的方式, 您可以从该列表中选择一个或多个项目。

    注意    查找字段可能会将新的 Access 用户搞糊涂, 因为项目列表显示在一个位置 (Access 从查阅字段中的数据创建的列表), 但数据可以驻留在其他位置 (包含数据的表)。

默认情况下, Access 在组合框控件中显示列表数据, 但您可以指定列表框控件。 此时将打开一个组合框以显示列表, 然后在做出选择后关闭。 相比之下, 列表框始终保持打开状态。

若要编辑列表, 您也可以运行 "编辑列表项目" 命令, 也可以直接在源表的 "行来源" 属性中编辑数据。 更新查阅字段中的数据时, 将更新源表。

如果列表框或组合框的“行来源类型”属性设置为“值列表”,则当在窗体视图中打开了窗体时可以编辑值列表 - 不需要在每次需要更改列表时切换到设计视图或布局视图、打开属性表并编辑控件的“行来源”属性。 要编辑值列表,必须将列表框或组合框的“允许编辑值列表”属性设置为“”。

有关详细信息, 请参阅使用列表框或组合框创建选择列表

禁止在窗体视图中编辑值列表

  1. 在导航窗格中右键单击窗体,然后单击“设计视图”或“布局视图”。

  2. 单击控件进行选择,然后按 F4 显示属性表。

  3. 在属性表的“数据”选项卡上,将“允许编辑值列表”属性设置为“”。

  4. 单击 "文件", 然后单击 "保存", 或按 Ctrl + S 按钮图像

指定其他窗体以编辑值列表

默认情况下,Access 提供了内置窗体来实现编辑值列表的目的。 如果您希望使用所拥有的其他窗体来实现此目的,则可以在“列表项目编辑窗体”属性中输入窗体的名称,如下所示:

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

  2. 单击控件进行选择,然后按 F4 显示属性表。

  3. 在属性表的“数据”选项卡上,单击“列表项目编辑窗体”属性框中的下拉箭头。

  4. 单击要用于编辑值列表的窗体。

  5. 单击文件, 然后单击 "保存", 或按 Ctrl + S 按钮图像

检查窗体中的查阅字段

  1. 在 "布局" 或 "设计" 视图中打开窗体。

  2. 右键单击列表框或组合框控件, 然后单击 "属性"。

  3. 在属性表中, 单击 "全部" 选项卡, 找到 "行来源类型" 和 "行来源" 属性。 "行来源类型" 属性应包含值列表表/查询, 并且 "行来源" 属性应包含由分号或查询分隔的项目列表。 若要获取更多空间, 请右键单击该属性, 然后选择 "缩放" 或按 Shift + F2。

    通常情况下, 值列表使用以下基本语法: "item"; "项目";"item"

    在这种情况下, 该列表是一组由双引号包围的项目, 并用分号分隔。

    选择查询使用以下基本语法: select [table_or_query_name]. [[table_or_query_name]中的 field_name]

    在这种情况下,查询包含两个子句(SELECT 和 FROM)。 第一个子句引用表或查询以及该表或查询中的字段。 第二个子句仅引用表或查询。 以下是要记住的关键点: SELECT 子句不必包含表或查询的名称, 尽管建议使用, 并且它们必须包含至少一个字段的名称。 但是,所有 FROM 子句都必须引用表或查询。 因此, 您始终可以通过读取 from 子句来查找查找字段的源表或源查询。

  4. 执行下列操作之一。

    • 如果您使用的是值列表, 请编辑列表中的项目。 请确保使用双引号括住每个项目, 并用分号分隔每个项目。

    • 如果查阅列表中的查询引用了另一个查询, 请在设计视图中打开第二个查询 (右键单击导航窗格中的查询, 然后单击 "设计视图")。 记下查询设计器上半部分中显示的表的名称, 然后转到下一步。

      否则, 如果查阅字段中的查询引用表, 请记下表的名称, 然后转到下一步。

  5. 数据表视图中打开表, 然后根据需要编辑列表项。

检查表中的查阅字段

  1. 在“设计视图”中打开表。

  2. 在查询设计网格的上半部分中的 "数据类型" 列中, 单击或以其他方式将焦点放在任何文本、数字或 "是/否" 字段上。

  3. 在表设计网格的下半部分中, 单击 "查阅" 选项卡, 然后查看 "行来源类型" 和 "行来源" 属性。

    "行来源类型" 属性必须读取值列表表/查询。 "行来源" 属性必须包含 "值列表" 或 "查询"。

    值列表使用以下基本语法: "item"; "项目";"item"

    在这种情况下, 该列表是一组由双引号包围的项目, 并用分号分隔。

    通常, 选择查询使用以下基本语法: select [table_or_query_name]. [[table_or_query_name]中的 field_name]

    在这种情况下,查询包含两个子句(SELECT 和 FROM)。 第一个子句引用表或查询以及该表或查询中的字段。 第二个子句仅引用表或查询。 以下是要记住的关键点: SELECT 子句不必包含表或查询的名称, 尽管建议使用, 并且它们必须包含至少一个字段的名称。 但是,所有 FROM 子句都必须引用表或查询。 因此, 您始终可以通过读取 from 子句来查找查找字段的源表或源查询。

  4. 执行下列操作之一。

    • 如果您使用的是值列表, 请编辑列表中的项目。 请确保使用双引号括住每个项目, 并用分号分隔每个项目。

    • 如果查阅字段中的查询引用另一个查询, 请在导航窗格中, 在 "设计" 视图中打开第二个查询 (右键单击查询, 然后单击 "设计视图")。 记下查询设计器上半部分中显示的表的名称, 然后转到下一步。

      否则, 如果查阅字段中的查询引用表, 请记下表的名称, 然后转到下一步。

  5. 数据表视图中打开表, 然后根据需要编辑列表项。

返回页首

从值列表或查阅字段中删除数据

值列表中的项目与记录中其他值位于位于相同的表中。 相比之下, 查阅字段中的数据驻留在一个或多个其他表中。 若要从值列表中删除数据, 请打开表并编辑项目。

从查阅列表中删除数据需要额外的步骤,这些步骤取决于查阅列表的查询是从表还是从其他查询获取其数据。 如果查阅列表的查询基于表,请确定该表和包含列表中所显示数据的字段。 然后打开源表并编辑该字段中的数据。 如果查阅列表的查询基于另一个查询,那么必须打开该第二个查询,找到第二个查询获取其数据的源表和字段,并更改该表中的值。

从值列表中删除数据

  1. 在“设计视图”中打开表。

  2. 在设计网格的上半部分,选择包含值列表的表字段。

  3. 在网格的下半部分,单击“查阅”选项卡,然后找到“行来源”属性。

    默认情况下,值列表中的项目用双引号括起,用分号分隔每个项目:"Excellent";"Fair";"Average";"Poor"

  4. 根据需要,从列表中删除项目。 请记得删除每个已删除项目两侧的引号。 另外,不要保留前导分号,不要将分号堆叠在一起 (;;),如果删除列表中的最后一个项目,请删除最后一个分号。

    重要提示    如果从值列表中删除一个项目,并且表中的记录使用了该已删除的项目,那么删除的项目将保留在记录中,直到对其进行更改。 例如,假设你的公司在 A 市有一个仓库,然后出售了该建筑物。 如果从仓库列表中删除“A 市”,你会在表中看到“A 市”,直到更改这些值。

从查阅字段中删除数据

  1. 在“设计视图”中打开表。

  2. 在设计网格的上半部分中,选择查阅字段。

  3. 在设计网格的下半部分中,单击“查阅”选项卡,找到“行来源类型”和“行来源”属性。

    行类型”属性应显示“表/查询”,“行来源”属性必须包含引用表或其他查询的查询。 查阅字段的查询始终以 "选择" 一词开头

    通常(但不总是),选择查询使用这种基本语法:SELECT [table_or_query_name].[field_name] FROM [table_or_query_name].

    在这种情况下,查询包含两个子句(SELECT 和 FROM)。 第一个子句引用一个表和该表中的一个字段;相反,第二个子句仅引用表。 有一点需要记住:FROM 子句总包含源表或查询的名称。 SELECT 子句总包含至少一个字段的名称,但不一定包含表或查询的名称。 但是,所有 FROM 子句都必须引用表或查询。

  4. 执行下列操作之一:

    • 如果查阅字段中的查询引用另一个查询, 请单击 "生成" 按钮 (在属性表的 "数据" 选项卡上, 单击 " “生成器”按钮 ") 以在 "设计" 视图中打开查询。 请记下查询设计器上半部分显示的表的名称,然后继续执行步骤 5。

    • 如果查阅字段中的查询引用表,请记下表的名称,然后继续执行步骤 5。

  5. 数据表视图中打开源表。

  6. 找到包含查阅列表中所用数据的字段,然后根据需要编辑该数据。

返回页首

数据类型如何影响您输入数据的方式

设计数据库表时, 为该表中的每个字段选择一个数据类型, 这是一个有助于确保输入更精确的数据的过程。

查看数据类型

执行下列操作之一:

使用数据表视图

  1. 在“数据表视图”中打开表。

  2. 在 "字段" 选项卡上的 "格式" 组中, 查看 "数据类型" 列表中的值。 将光标放在表中的各个字段中时, 该值会更改:

    数据类型列表

使用设计视图

  1. 在“设计视图”中打开表。

  2. 查看设计网格。 网格的上半部分显示了每个表字段的名称和数据类型。

    设计视图中的字段

数据类型如何影响数据输入

为每个表字段设置的数据类型提供了对字段中允许的数据类型的第一级控制。 在某些情况下, 例如长文本字段, 你可以输入所需的任何数据。 在其他情况下, 例如 "自动编号" 字段, 该字段的数据类型设置将阻止您输入任何信息。 下表列出了Access 提供的数据类型, 并介绍了它们对数据输入有何影响。

有关详细信息, 请参阅Access 桌面数据库的数据类型修改或更改字段的数据类型设置

数据类型

对数据输入的影响

短文本

注意,从 Access 2013 开始,文本数据类型已重命名为短文本​​。

"短文本" 字段接受文本或数字字符, 包括分隔的项目列表。 文本字段接受的字符数比长文本字段 (从0到255个字符) 少得多。 在某些情况下, 你可以使用转换函数对短文本字段中的数据执行计算。

长文本

注意, 从 Access 2013 开始, "备注" 数据类型已重命名为 "长文本"。

你可以在此类型的字段中输入大量的文本和数字数据, 最多64000个字符。 此外, 将该字段设置为支持 rtf 格式, 您可以在 word 处理程序 (如 word) 中应用通常可以找到的格式类型。 例如, 你可以将不同的字体和字号应用到文本中的特定字符, 并将其设置为粗体或斜体等。 您也可以将超文本标记语言 (HTML) 标记添加到数据中。 有关详细信息, 请参阅插入或添加格式文本字段

此外, 长文本字段的属性称为 "仅追加"。 启用该属性时, 可以将新数据追加到长文本字段, 但不能更改现有数据。 此功能旨在在问题跟踪数据库等应用程序中使用, 在这种情况下, 你可能需要保留不可变的永久记录。 将光标放在已启用 "仅追加" 属性的长文本字段中时, 默认情况下, 该字段中的文本将消失。 不能对文本应用任何格式或其他更改。

与短文本字段一样, 你也可以对长文本字段中的数据运行转换函数。

数字

只能在此类型的字段中输入数字, 并且可以对数字字段中的值执行计算。

大数

注意, 大型数字数据类型仅在 Access 版本的 Office 365 订阅版本中可用。

只能在此类型的字段中输入数字, 并且可以对大型数字字段中的值执行计算。

有关详细信息,请参阅使用大数数据类型

日期/时间

您只能在此类型的字段中输入日期和时间。 

你可以为字段设置输入掩码 (在选择字段时显示的一系列文本和占位符), 你必须在掩码所提供的空格和格式中输入数据。 例如, 如果你看到诸如 MMM_DD_YYYY 之类的掩码, 则必须在提供的空白处键入 11 2017 年10月。 不能输入完整的月份名称或两位数的年份值。 有关详细信息, 请参阅用输入掩码控制数据输入格式

如果不创建输入掩码, 则可以使用任何有效的日期或时间格式输入值。 例如, 您可以键入11月11日2017、10/11/17、10月11日、2017等。

您也可以向该字段应用显示格式。 在这种情况下, 如果不存在输入掩码, 则可以输入一个几乎任意格式的值, 但 Access 将根据显示格式显示日期。 例如, 你可以输入 10/11/2017, 但可能会设置显示格式, 以使其显示值为11月11日-2017。

有关详细信息, 请参阅插入今天的日期

货币

您只能在此类型的字段中输入货币值。 此外, 您无需手动输入货币符号。 默认情况下, Access 会应用在 Windows 区域设置中指定的货币符号 (¥、£、$ 等)。 如果需要, 您可以更改此货币符号以反映不同货币。

自动编号

您不能随时在此类型的字段中输入或更改数据。 每当您向表中添加新记录时, Access 都会增加 "自动编号" 字段中的值。

计算

您不能随时在此类型的字段中输入或更改数据。 此字段的结果由你定义的表达式确定。 每当您向表中添加或编辑新记录时, Access 都会更新计算字段中的值。

是/否​​

单击设置为此数据类型的字段时, Access 将显示复选框或下拉列表, 具体取决于设置字段的格式。 如果将字段格式设置为 "显示列表", 则可以从列表中选择"是" 或 "否"、"" 或 " " 或 "开" 或"", 具体取决于应用于该字段的格式。 不能在列表中输入值, 也不能直接从窗体或表中更改列表中的值。

OLE 对象

要显示使用其他程序创建的文件中的数据时, 请使用此类型的字段。 例如, 可以在 "OLE 对象" 字段中显示文本文件、Excel 图表或 PowerPoint 幻灯片面板。

附件为查看其他程序中的数据提供了一种更快、更轻松且更灵活的方式。

超链接

可以在此类型的字段中输入任何数据, Access 会将其包装在 Web 地址中。 例如, 如果在字段中键入一个值, Access 将使用 http://www 将文本括起来your_text。 如果您输入有效的 Web 地址, 您的链接将有效。 否则, 你的链接将导致错误消息。

此外, 编辑现有超链接很难, 因为使用鼠标单击超链接字段将启动浏览器, 并转到链接中指定的网站。 若要编辑超链接字段, 请选择相邻字段, 使用 TAB 或箭头键将焦点移动到 "超链接" 字段, 然后按 F2 启用编辑。

附件

你可以将其他程序中的数据附加到此类型的字段, 但不能键入或以其他方式输入文本或数字数据。

有关详细信息, 请参阅将文件和图形附加到数据库中的记录

查阅向导

查阅向导不是数据类型。 而是使用向导创建两种类型的下拉列表: 值列表和查找字段。 值列表使用您在使用查阅向导时手动输入的项目的分隔列表。 这些值可以独立于数据库中的任何其他数据或对象。

相比之下, 查阅字段使用查询来检索数据库中的一个或多个其他表中的数据。 然后, "查阅" 字段将在下拉列表中显示数据。 默认情况下, "查阅向导" 将表字段设置为 "数字" 数据类型。

您可以直接在表中以及窗体和报表中使用查阅字段。 默认情况下, 查阅字段中的值显示在一种名为 "组合框" 的列表控件中 (具有下拉箭头的列表):

空白查阅列表

您还可以使用显示多个带有滚动条的项目的列表框来查看更多项目:

窗体上的基本列表框控件

根据 "查阅" 字段和 "组合框" 的设置方式, 您可以编辑列表中的项目并将项目添加到列表, 方法是关闭查阅字段的 "限制为列表" 属性。

如果不能直接编辑列表中的值, 则必须在预定义的值列表中或在用作查阅字段源的表中添加或更改数据。

最后, 在创建查阅字段时, 可以选择将其设置为支持多个值。 执行此操作时, 生成的列表将显示每个列表项旁边的复选框, 并且你可以根据需要选择或清除任意多个项。 下图显示了一个典型的多值列表:

复选框列表。

有关创建多值查阅字段和使用生成的列表的信息, 请参阅创建或删除多值字段

返回页首

表字段属性如何影响输入数据的方式

除了控制数据库结构的设计原则以及控制可在给定字段中输入的内容的数据类型外, 一些字段属性也会影响在 Access 数据库中输入数据的方式。

查看表字段的属性

Access 提供两种方法来查看表字段的属性。

在数据表视图中

  1. 在“数据表视图”中打开表。

  2. 单击 "字段" 选项卡, 然后使用 "格式" 组中的控件查看每个表字段的属性。

在 "设计" 视图中

  1. 在“设计视图”中打开表。

  2. 在网格的下半部分中, 单击 "常规" 选项卡 (如果尚未选中)。

  3. 若要查看查阅字段的属性, 请单击 "查阅" 选项卡。

属性如何影响数据输入

下表列出了对数据输入具有最大影响的属性, 并说明了它们对数据输入有何影响。

属性

在表设计网格中的位置

可能的值

尝试输入数据时的行为

字段大小

常规”选项卡

0-255

字符限制仅适用于设置为 "文本" 数据类型的字段。 如果您尝试输入的字符数超过指定的字符数, 则字段会将其截断。

必需​​

常规”选项卡

是/否​​

当已打开时, 此属性强制你在字段中输入一个值, 并且 Access 不会让你保存任何新数据, 直到你完成一个必需的字段。 在关闭时, 字段将接受 null 值, 这意味着字段可以保留为空值。

null 值与零值的内容不同。 0是一个数字, 而 "null" 表示缺少、未定义或未知值。

允许零长度字符串

常规”选项卡

是/否​​

在打开时, 你可以输入零长度字符串-不含任何字符的字符串。 若要创建零长度字符串, 请在字段中输入一对双引号 ("")。

已索引

常规”选项卡

是/否​​

对表字段进行索引时, Access 会阻止您添加重复值。 您也可以从多个字段创建索引。 如果执行此操作, 则可以将值复制到一个字段中, 但不能在两个字段中重复。

输入掩码

常规”选项卡

预定义或自定义文本和占位符字符集

输入掩码强制你以预定义格式输入数据。 选择表格中的字段或窗体上的控件时, 将显示掩码。 例如, 假设您单击一个日期字段并查看此字符集: YYYY 年 MMM。 这是输入掩码。 它强制你将月份值输入为3个字母缩写 (如 oct) 和年份值为四位数 (例如10月-15-2017)。

输入掩码仅控制输入数据的方式, 而不是 Access 存储或显示该数据的方式。

有关详细信息, 请参阅使用输入掩码控制数据输入格式设置日期和时间字段的格式

限制为列表

查阅选项卡

是/否​​

启用或禁用对查阅字段中的项目所做的更改。 用户有时会尝试手动更改查阅字段中的项目。 当 Access 阻止您更改字段中的项目时, 此属性设置为"是"。 如果启用此属性, 并且需要更改列表中的项目, 则必须打开列表 (如果要编辑值列表) 或包含列表源数据的表 (如果要编辑查阅字段) 和更改其中的值。

允许编辑值列表

查阅选项卡

是/否​​

启用或禁用值列表的 "编辑列表项" 命令, 但不允许查找字段。 若要为查找字段启用该命令, 请在 "列表项目编辑窗体" 属性中输入有效的窗体名称。 通过右键单击列表框或组合框控件打开的快捷菜单上显示 "允许编辑值列表" 命令。 运行该命令时, 将显示 "编辑列表项目" 对话框。 或者, 如果您在 "列表项目编辑" 窗体属性中指定了窗体的名称, Access 将启动该窗体, 而不显示对话框。

可以从窗体上的列表框和组合框控件以及位于表和查询结果集中的组合框控件运行 "编辑列表项" 命令。 窗体必须在 "设计" 视图或 "浏览" 视图中打开;表和查询结果集必须在数据表视图中打开。

列表项目编辑窗体

查阅选项卡

数据输入表单的名称

如果输入数据输入表单的名称作为此表属性中的值, 则当用户运行 "编辑列表项目" 命令时, 该表单将打开。 否则, 当用户运行该命令时, 将显示 "编辑列表项目" 对话框。

返回页首

使用级联更新更改主键值和外键值

有时, 您可能需要更新主键值。 如果将该主键用作外键, 则可以通过外键的所有子实例自动更新所做的更改。

作为提醒,主键是唯一标识数据库表中每一行 (记录) 的值。 外键是与主键匹配的列。 通常, 外键驻留在其他表中, 使你能够在表中的数据之间创建关系 (链接)。

例如, 假设您将产品 ID 号用作主键。 一个 ID 号唯一标识一个产品。 您也可以将该 ID 号用作订单数据表中的外键。 这样, 你可以查找涉及每个产品的所有订单, 因为每当某人为该产品下订单时, ID 就会成为订单的一部分。

有时, 这些 ID 号 (或其他类型的主键) 将发生更改。 执行此操作时, 你可以更改你的主键值, 并使该更改自动级联到所有相关子记录。 你可以通过在两个表之间启用引用完整性和级联更新来启用此行为。

请记住以下重要规则:

  • 只能为设置为 "文本" 或 "数字" 数据类型的主键字段启用级联更新。 不能对设置为 "自动编号" 数据类型的字段使用级联更新。

  • 只能在具有一对多关系的表之间启用级联更新。

有关创建关系的详细信息。 请参阅表关系指南创建、编辑或删除关系

以下过程将参与并介绍如何首先创建关系, 然后为该关系启用级联更新。

创建关系

  1. 在“数据库工具”选项卡上的“显示/隐藏”组中,单击“关系”。

  2. 在 "设计" 选项卡上的 "关系" 组中, 单击 "显示表"。

  3. 在 "显示表" 对话框中, 选择 "" 选项卡, 选择要更改的表, 单击 "添加", 然后单击 "关闭"。

    你可以按 SHIFT 选择多个表, 也可以单独添加每个表。 仅选择关系的 "一" 方和 "多" 方的表。

  4. 在 "关系" 窗口中, 拖动关系的 "一" 方表中的主键, 并将其放在关系的 "多" 方的表的外键字段上。

    将显示“编辑关系”对话框。 下图显示了该对话框:

    具有现有关系的“编辑关系”对话框

  5. 选中 "实施参照完整性" 复选框, 然后单击 "创建"。

在主键中启用级联更新

  1. 在“数据库工具”选项卡上的“显示/隐藏”组中,单击“关系”。

  2. 将显示 "关系" 窗口, 并显示数据库中表之间的联接 (显示为连接线)。 下图显示了一个典型关系:

  3. 右键单击父表和子表之间的联接线, 然后单击 "编辑关系"。

    两个表之间的关系

    将显示“编辑关系”对话框。 下图显示了该对话框:

    “编辑关系”对话框

  4. 选择 "级联更新相关字段", 确保选中 "实施参照完整性" 复选框, 然后单击"确定"

返回页首

为什么 ID 号码似乎跳过了一个号码

创建设置为 "自动编号" 数据类型的字段时, Access 会在每条新记录中自动为该字段生成一个值。 默认情况下, 该值会增加, 因此每条新记录都将获取下一个可用的序列号。 "自动编号" 数据类型的用途是提供适合用作主键的值。 有关详细信息, 请参阅添加、设置、更改或删除主键

当从包含设置为 "自动编号" 数据类型的字段的表中删除行时, 该行的 "自动编号" 字段中的值不会始终自动重复使用。 因此, Access 生成的数字可能不是你希望看到的数字, 并且在 ID 号序列中可能会出现间隙, 这是设计使然。 你应该仅依赖 "自动编号" 字段中值的唯一性, 而不是其顺序。

返回页首

使用查询批量更新数据

追加、更新和删除查询是批量添加、更改或删除记录的强大方法。 此外, 在使用良好的数据库设计原则时, 批量更新更容易、更高效。 使用追加、更新或删除查询可以节省时间, 因为您还可以重复使用该查询。

重要提示    在使用这些查询之前, 请备份数据。 准备好备份可帮助你快速修复可能无意中出现的任何错误。

追加查询    用于向一个或多个表添加多条记录。 追加查询最常用的一种用法是将源数据库中的一个或多个表中的一组记录添加到目标数据库中的一个或多个表中。 例如, 假设你获取了一些新客户和数据库, 其中包含有关这些客户的信息表。 若要避免手动输入新数据, 可以将其追加到数据库中的相应表或表中。 有关详细信息, 请参阅使用追加查询将记录添加到表

更新查询    用于添加、更改或删除许多现有记录的部分 (但不是全部)。 可以将更新查询视为一种强大的“查找和替换”对话框形式。 输入一个 select 条件 (相当于搜索字符串的大致等效项) 和更新条件 (大致等同于替换字符串)。 与对话框不同, 更新查询可以接受多个条件, 允许您在一次传递中更新大量记录, 并允许您更改多个表中的记录。 有关详细信息, 请参阅创建和运行更新查询

删除查询    如果想要快速删除大量数据或定期删除一组数据, 则删除很有用, 因为查询可以指定条件来快速查找和删除数据。 有关详细信息, 请参阅添加、编辑和删除记录的方法

返回页首

扩展你的 Office 技能
了解培训
抢先获得新功能
加入 Office 预览体验计划

此信息是否有帮助?

谢谢您的反馈!

谢谢你的反馈! 可能需要转接到 Office 支持专员。

×