联合主键sql
⑴ sql Server 怎么建立联合主键
建立联合主键有两种方式:
一种是在建表时就写出,语句如下:
Create Table 表名 (字段名1 Int Not Null,
字段名2 nvarchar(13) Not Null Primary Key (字段名1, 字段名2),
字段名3…………
字段名N………… )
另一种是在建表后更改,语句如下:
alter table 你的表名 add constraint pk_你的表名 primary key (字段1,字段2)
ALTER TABLE 表名 WITH NOCHECK ADD
CONSTRAINT [PK_表名] PRIMARY KEY NONCLUSTERED
(
[字段名1],
[字段名2]
)
创建联合主键还可以这样写:
create table huayunkeji_today(device_id int , year int, month int, day int, hour int, temperature float, humidity float,
primary key(device_id,year,month,day,hour));
(1)联合主键sql扩展阅读:
联合主键的使用情况及优点:
联合主键就是用2个或2个以上的字段组成主键。用这个主键包含的字段作为主键,这个组合在数据表中是唯一,且加了主键索引。
可以这么理解,比如,你的订单表里有很多字段,一般情况只要有个订单号bill_no做主键就可以了,但是,现在要求可能会有补充订单,使用相同的订单号,那么这时单独使用订单号就不可以了。
再使用个订单序列号bill_seq来作为区别。把bill_no和bill_seq设成联合主键。即使bill_no相同,bill_seq不同也是可以的。
⑵ sql联合主键的作用
举个简单的例子,
班上有相同姓名的学生,也有相同生日的学生,但一般没有既是同名又是同生日的学生,
因此在不考虑用序号做主键的情况下,可以考虑使用姓名以及生日这2个字段来做联合主键。
⑶ SQL2014如何设置联合主键
使用SHIFT键,可以多选列,然后设置为联合主键
具体操作:
1、先按下SHIFT键,不要松开
2、用鼠标选中 Cno和Sno 两行
3、松开SHIFT键
4、点击“钥匙”那个图标设置为主键
5、保存
⑷ 为什么SQL里的一个表有两个主键
一个数据库表只能有一个主键,不允许两个主键。但是允许两个字段联合起来设置为主键,这叫联合主键。
创建主键的方式如下:
ALTERTABLE选课表
ADDCONSTRAINTpk_选课表PRIMARYKEY(学号);
创建联合主键的方式如下:
ALTERTABLE选课表
ADDCONSTRAINTpk_选课表PRIMARYKEY(学号,课程编号);