您好,我是小DAI,专注于数据库管理员相关的技术问答,请问有什么可以帮您?

sp_primarykey

语法


sp_primarykey <tabname>, <col1>[, <col2>, <col3>, ..., <col8>]

参数

<tabname>

是要定义主键的表或视图的名称。

<col1>

是构成主键的第一列的名称。主键可由 1 到 8 个列组成。

示例

示例 1

将 au_id 字段定义为表 authors 的主键:


sp_primarykey authors, au_id

示例 2

将字段 lastname 和 firstname 的组合定义为表 employees 的主键:


sp_primarykey employees, lastname, firstname

用法

使用 sp_primarykey 时,还存在一些其它注意事项:

  • 执行 sp_primarykey 会向 syskeys 表添加键。只有表或视图的所有者才能定义其主键。sp_primarykey 不强制执行参照完整性约束;使用 create table 或 alter table 命令的 primary key 子句来强制执行主键关系。

  • 用 sp_primarykey、sp_commonkey 和 sp_foreignkey 定义键,以使在数据库设计中为隐式的逻辑关系成为显式的逻辑关系。应用程序可以使用这些信息。

  • 一个表或视图只能有一个主键。若要显示有关已定义键的报告,请执行 sp_helpkey。

  • 安装进程对系统表的相应列运行 sp_primarykey。