本文概述
- 使用CREATE TABLE语句创建主键
- 在主键超过一个字段的SQL Server中创建一个主键
- 使用ALTER TABLE语句创建主键
你可以在CREATE TABLE语句或ALTER TABLE语句中定义主键。
使用CREATE TABLE语句创建主键 句法:
CREATE TABLE table_name( column1 datatype [ NULL | NOT NULL ] [ PRIMARY KEY ], column2 datatype [ NULL | NOT NULL ], ...);
Or
CREATE TABLE table_name( column1 datatype [ NULL | NOT NULL ], column2 datatype [ NULL | NOT NULL ], ...CONSTRAINT constraint_name PRIMARY KEY (column1, column2, ... column_n));
例:
创建一个表” cricketers” , 其中” cricketer_id” 是主键。
CREATE TABLE cricketers( cricketer_id INT PRIMARY KEY, last_name VARCHAR(50) NOT NULL, first_name VARCHAR(50) NOT NULL, salary MONEY);
输出
文章图片
你可以使用SELECT命令验证创建的表:
SELECT * FROM [srcmini].[dbo].[cricketers]
输出
文章图片
这里cricketer_id是主键。
你还可以使用第二种语法使用主键创建表:
例:
CREATE TABLE cricketers2( cricketer_id INT, last_name VARCHAR(50) NOT NULL, first_name VARCHAR(50) NOT NULL, salary MONEY, CONSTRAINT cricketers2_pk PRIMARY KEY (cricketer_id));
输出
文章图片
【SQL Server主键示例图解】你可以使用SELECT命令验证创建的表:
SELECT * FROM [srcmini].[dbo].[cricketers2]
输出
文章图片
在主键超过一个字段的SQL Server中创建一个主键 例:
CREATE TABLE cricketers3( last_name VARCHAR(50) NOT NULL, first_name VARCHAR(50) NOT NULL, salary MONEY, CONSTRAINT cricketers3_pk PRIMARY KEY (last_name, first_name));
输出
文章图片
你可以使用SELECT命令验证创建的表:
SELECT * FROM [srcmini].[dbo].[cricketers3]
输出
文章图片
在这里, last_name和first_name都是主键。
使用ALTER TABLE语句创建主键 你可以使用ALTER TABLE语句仅在已经定义为NOT NULL的列上创建主键。
如果表的某列具有NULL值, 则不能添加主键而不删除并重新创建该表。
句法:
ALTER TABLE table_nameADD CONSTRAINT constraint_name PRIMARY KEY (column1, column2, ... column_n);
例:
在表” cricketers2″ 中创建一个主键” cricketer_id” 。
ALTER TABLE [srcmini].[dbo].[cricketers2]ADD CONSTRAINT cricketers2_pk PRIMARY KEY (cricketer_id);
输出
文章图片
它将在” cricketers2″ 表中创建一个主键” cricketer_id” 。
推荐阅读
- SQL Server外键用法示例图解
- 仿照 ButterKnife 的 Android 注解实例
- WPF:WrapPanel 容器的数据绑定(动态生成控件遍历)
- CAPP集成化工艺设计与管理系统
- Vue2.5??????????????????App?????????????????????????????????
- Photoshop——APP设计规范
- H5 App设计者需要注意的问题
- Android 中如何计算 App 的启动时间()
- android手机导入.cer证书文件的方法