Access 2003完整教程:创建约束 (ADP)

注释本主题中的信息仅适用于 Microsoft Access 项目 (.adp)。

定义主键约束

定义主键,可以对于在不允许空值的特定列中输入的数据实施唯一性。如果为数据库中的一个表定义了主键,那么可以使该表与其他表相关,这样可减少冗余数据。一个表只能有一个主键。

  1. 在“数据库”窗口中,单击“对象”下的“数据库图表”按钮图像,单击要打开的数据库图表,再单击“数据库”窗口工具栏上的“设计”
  2. 在数据库图表中,单击要定义为主键的数据库列的行选定器。如果要选择多个列,当单击其他列的行选定器时按住 Ctrl。
  3. 用鼠标右键单击列的行选择器,并选择“主键”。在“属性”页的“索引/键”选项卡中就自动创建了一个主键索引,其名称定义为“PK_”后接表名。

    警告如果想要重新定义主键,在创建新主键之前,必须删除与现有主键之间的任何关系。在这个过程中,会有一条消息警告您将要自动删除已有的关系。

主键列由行选择器中的主键符号按钮图像标识。

如果一个主键由多个列构成,那么在一列中允许有重复值,但是来自主键中所有列的值的每个组合必须是唯一的。

如果定义了复合键,主键中列的顺序与数据库图表中表显示的列顺序相匹配。但是,可以在主键创建之后更改列的顺序。在“列名”窗格中,删除主键中的列。再按希望的顺序重新添加列。要从键中删除列,只需“列名”列表中删除列名。

为表或列附加新的检查约束

为表附上检查约束,以指定能被一个或多个列接受的数值。

  1. 在“数据库”窗口中,单击“对象”下的“数据库图表”按钮图像,单击要打开的数据库图表,再单击“数据库”窗口工具栏上的“设计”
  2. 在数据库图表中,用右键单击包含约束的表,再从快捷菜单中选择“约束”。
  3. 选择“新建”命令。“选定的约束”框会显示系统为新约束指定的名称。系统指定的名称以“CK_”开头,后面是表名。
  4. 在“约束表达式”框中,键入检查约束的 SQL 表达式。例如,要将authors表的state列的输入限制为 New York,键入:
    state = 'NY'
    

    或者,要求zip列的输入是 5 位数字,键入:

    zip LIKE '[0-9][0-9][0-9][0-9][0-9]'
    

    注释确保将任何非数字约束值都用单引号 (') 括起来。

  5. 如果要为约束指定其他名称,可以在“约束名”框中键入这个名称。
  6. 使用复选框控制约束实施的时间:
    • 要在创建约束之前,用现有数据测试约束,请选中“创建中检查现有数据”。
    • 要在该表发生同步复制操作时实施约束,请选中“对复制强制约束”。
    • 要在该表插入或更新行时实施约束,请选中“对 INSERT 和 UPDATE 强制约束”。

创建检查约束时检查已有数据

当创建检查约束时,可以选择是只将它应用于新数据还是也可应用于已有数据。当您知道已有数据符合新的检查约束,或当一条商务规则只从此时之后实施约束时,只将约束应用于新数据的选项是有用的。

例如,您可能曾将邮政编码限制为五个数字,但是现在想让新数据接受九个数字的邮政编码。五个数字邮政编码的旧数据会与包含九个数字邮政编码的新数据共存。

  1. 在“数据库”窗口中,单击“对象”下的“数据库图表”按钮图像,单击要打开的数据库图表,再单击“数据库”窗口工具栏上的“设计”

    - 或者 -

    在数据库图表中,用右键单击包含约束的表,再从快捷菜单中选择“约束”。

  2. 从“选定的约束”列表中选择约束。
  3. 选中“创建中检查现有数据”复选框。在默认情况下此选项是选中的。

当保存数据库图表时,将应用检查约束。如果在保存过程中,遇到了任何约束冲突,那么就不能保存该表。

创建唯一约束

创建唯一约束可以确保在特定列中不会输入重复值,而主键中不包含这些列。虽然唯一约束和主键都能实施唯一性,但是在下列情况下,应该向表中附加唯一约束而不是主键约束:

  1. 在“数据库”窗口中,单击“对象”下的“数据库图表”按钮图像,单击要打开的数据库图表,再单击“数据库”窗口工具栏上的“设计”
  2. 在数据库图表中,用右键单击要包含约束的表再从快捷菜单中选择“索引/键”。
  3. 选择“新建”。在“索引名称”框中会显示系统指定的名称。
  4. 在“列名”中,展开列的列表并且选择对其附加约束的列。若要将约束附加在多个列中,在后续行中选择其他列。
  5. 选中“创建 UNIQUE”复选框。
  6. 选择“约束”选项。

当保存数据库图表时,就在数据库中创建了唯一约束。

如果要控制键值的排序顺序,和存在重复键时所采取的操作,就应该创建唯一索引,而不要创建唯一约束。

上页:Access 2003完整教程:在数据访问页上创建用于网站的图表 下页:Access 2003完整教程:创建约束验证文本 (ADP)

Access 2003完整教程:创建约束 (ADP)

Access 2003完整教程:创建约束验证文本 (ADP)Access 2003完整教程:使子窗体与显示页眉和页脚的数据表类似
Access 2003完整教程:当鼠标指针在控件上移动时显示提示Access 2003完整教程:创建交叉表报表
Access 2003完整教程:创建自定义颜色Access 2003完整教程:组数据库对象
Access 2003完整教程:创建在查找 Access 文件时所用的自定义属性Access 2003完整教程:将现有的网页转换为数据访问页
Access 2003完整教程:创建自己的数字证书Access 2003完整教程:在查询中创建计算字段 (MDB)
Access 2003完整教程:创建存储超链接的字段 (MDB)Access 2003完整教程:创建字段以存储图片的路径
Access 2003完整教程:用筛选记录创建数据库对象 (MDB)Access 2003完整教程:创建输入掩码 (ADP)
Access 2003完整教程:创建标签Access 2003完整教程:创建查阅列 (ADP)
Access 2003完整教程:创建宏Access 2003完整教程:创建邮件标签
Access 2003完整教程:创建 Access 工作组信息文件 (MDB)Access 2003完整教程:用包含查询的其他表创建表 (MDB)
版权所有 © 中山市飞娥软件工作室 证书:粤ICP备09170368号