1
数据库技术及应用
1.7.4.2 4.4.2 主键(Primary key)
4.4.2 主键(Primary key)

表通常具有包含唯一标识表中每一行的一列或多列,这样的一列或多列成为表的主键(primary key),用于实现表的实体完整性。主键具有以下特性:

(1)保证表中唯一可区分记录行。

(2)每个表只能存在一个主键。

(3)主键可以有一个或多个字段组成。

(4)主键不能为空,也不能重复。

设置主键的方法有两种,第一种是在SSMS管理器中设置;第二种是通过编辑T-SQL语句来实现。后面的各种约束都可以采用这两种方法来实现。

【例4-12】由于在Student_info表中,需要用学号作为记录唯一区分的标志,因此,可以把学号当作该表的PRIMARY-KEY,如何来完成设置呢?

第一种方法是使用SSMS(SQL Server Management Studio)来完成PRIMARYKEY约束;第二种方法则是使用T-SQL语句创建主键约束。

1.使用SSMS完成PRIMARYKEY约束

(1)启动SQL Server Management Studio,在其“对象资源管理器”窗格中依次展开“数据库”节点、Student节点和“表”节点,在dbo.Student_info上单击鼠标右键,在弹出的快捷菜单中执行“设计”命令,如图4-23所示。

图4-23 执行“设计”命令


图4-24 执行“设置主键”命令

(2)在打开窗口的右上部分,右键单击要设置的PRIMARYKEY列,如Sid,在弹出的快捷菜单中执行“设置主键”命令,如图4-24所示。

(3)完成后,在该字段前面将会显示一把钥匙图标,表示主键设置成功,如图4-25所示。

如果需要删除主键,则在Sid上单击鼠标右键,在弹出的快捷菜单中执行“删除主键(Y)”命令即可,如图4-26所示。

图4-25 主键设置成功

图4-26 执行“删除主键”命令

2.使用T-SQL语句创建主键约束

定义主键约束的基本语句格式如下:

更普遍的使用方法是在创建Student_info表时,就把主键设置写进T-SQL代码中: