如何在sql server中设置两个主键
主键是数据库表的一个重要属性,建立主键可以避免表中存在完全相同的记录,也就是说主键在一张表中的记录值是唯一的。
建立主键有两种方法:一种是在数据库提供的GUI环境中建立,另一种是通过SQL语句执行建立,下面分别介绍。
1、在数据库提供的GUI环境中建立。
输入表信息后按Ctrl键同时选中多行,然后点上面的主键按钮就行了。
2、通过SQL语句执行建立。又分两种,一是在建表语句中直接写,二是建表之后更改表结构。
在建表语句中直接写:
Create Table 表名 (字段名1 Int Not Null,
字段名2 nvarchar(13) Not Null Primary Key (字段名1, 字段名2),
字段名3…………
字段名N………… )
建表之后更改表结构:
CREATE TABLE 表名 (字段名1 Int Not Null,
字段名2 nvarchar(13) Not Null
字段名3…………
字段名N…………)
GO
ALTER TABLE 表名 WITH NOCHECK ADD
CONSTRAINT [PK_表名] PRIMARY KEY NONCLUSTERED
(
[字段名1],
[字段名2]
)
GO
2015-09-30
--创建学生表
CREATE TABLE 学生表
(
学号 int NOT NULL PRIMARY KEY (学号),
姓名 nvarchar(20) NOT NULL,
性别 bit,
出生日期 int not null,
系编码 int not null
)
--创建课程表
CREATE TABLE 课程表
(
课程号 int NOT NULL PRIMARY KEY (课程号),
课程名 nvarchar(100) NOT NULL,
选修课号 int,
学分 decimal(2,1)
)
--创建选课表
CREATE TABLE 选课表
(
学号 int not null,
课程号 int not null,
成绩 decimal(3,1)
primary key(学号,课程号) --将学号、课程号设为主键
)
在设计视图中,按住ctrl键,分别选中那两个列, 然后点一下工具栏上的主键按钮(钥匙形状)
或者使用代码:
CREATE TABLE
(
)
CREATE TABLE [myTable]
(
[Id1] int not null,
[Id2] int not null,
[Name] nvarchar(50) not null,
......
PRIMARY KEY([Id1],[Id2])
)
2、选中两列→右击→设为主键