添加、设置、更改或删除主键-小周
Access软件网QQ交流学习群(群号码198465573),欢迎您的加入!
首页 >技术文章> Access数据库-表


添加、设置、更改或删除主键

发表时间:2008/5/14 8:14:25 评论(0) 浏览(13837)  评论 | 加入收藏 | 复制
   
摘 要:
正 文:
 

数据库中的每个表都应该有一个字段或字段集,用来唯一标识该表中存储的每条记录。这个字段或字段集称为主键。本文将讨论主键的作用并介绍添加、设置、更改或删除主键的方法。

本文内容


什么是主键?

主键是表中的一个字段或字段集,为 Microsoft Office Access 2007 中的每行提供一个唯一的标识符。在关系数据库(如 Office Access 2007)中,您将信息分成不同的、基于主题的表。然后,使用表关系和主键以指示 Access 如何将信息再次组合起来。Access 使用主键字段将多个表中的数据迅速关联起来,并以一种有意义的方式将这些数据组合在一起。

这是因为,一旦您定义了主键,就可以在其他表内使用它来向回引用具有该主键的表。例如,“客户”表中的“客户 ID”字段也可能会显示在“订单”表中。在“客户”表中,它是主键,而在“订单”表中,它被称作外键。简而言之,外键就是另一个表的主键。

主键和外键

标注 1 主键
标注 2 外键

 

通常,唯一的标识号(如 ID 号、序列号或编码)充当表中的主键。例如,您可能有一个“客户”表,其中每个客户都有一个唯一的客户 ID 号。客户 ID 字段是主键。

一个好的主键候选具有几个特征。首先,它唯一标识每一行。其次,它从不为空或为  Null,即它始终包含一个值。再次,它几乎不(理想情况下永不)改变。Access 可使用主键字段将多个表中的数据快速收集在一起。

将姓名或地址作为主键则是一种糟糕的选择。它们都包含可能随时间变化的信息。

应该始终为表指定一个主键。Access 会自动为主键创建索引,这有助于加快查询和其他操作的速度。Access 还确保每条记录的主键字段中都有一个值,并且该值始终是唯一的。

在数据表视图中创建新表时,Access 自动为您创建主键,并且为它指定字段名“ID”和“自动编号”数据类型。默认情况下,该字段在“数据表视图”中为隐藏状态,但切换到“设计视图”后就可以看到该字段。

如果想不到可能成为优秀主键的一个字段或字段集,则请考虑使用某一数据类型为“自动编号”的列。这样的标识符不包含事实数据,即不包含任何描述所代表行的真实信息。因为不包含事实数据的标识符不会更改,所以使用这些标识符是一种好做法。因为真实信息本身经常会发生变化,所以包含有关某一行的事实数据的主键(如电话号码或客户名称)也极可能会更改。   


用于显示具有主键字段的“产品”表的图像

 

标注 1 数据类型为“自动编号”的列通常是一个不错的主键,因为它确保任何两个产品 ID 都互不相同。

 


在某些情况下,您可能想使用两个或多个字段一起作为表的主键。例如,存储订单行项目的“订单细节”表将在其主键中使用两个列:“订单 ID”和“产品 ID”。当一个主键使用多个列时,它又被称为复合键。

添加“自动编号”主键

在数据表视图中创建新表时,Access 自动为您创建主键,并且为它指定“自动编号”数据类型。但是,如果您有一个现有表,并且要向其中


Access软件网交流QQ群(群号:198465573)
 
 相关文章
创建或修改主键  【http://www.microsoft.com/  2012/4/29】
全国计算机等级考试access2级视频教程《第14集 access...  【李天生  2012/6/26】
SQL Server设置主键自增长列(使用sql语句实现)  【缪炜  2013/2/8】
判断表内是否有主键  【叶海峰  2013/3/30】
sql中添加唯一索引(非主键)  【smeyou  2013/4/10】
常见问答
技术分类
相关资源
文章搜索
关于作者

小周

文章分类

文章存档

友情链接