sql server 主键约束不生效 5C

图片说明图片说明
设置了联合主键约束,但是实际不但可以重复,还可以为空,是我的约束失效了么?

sql

11个回答

联合主键得两个列的值完全相同才不可以,你这个根本就不用联合主键,那个序列键就可以作为主键

lanxueren1113
lanxueren1113 是在不行就是把表中现有数据清空,重新插入数据看看情况,以前也遇到过。清空数据,在重新设计表编辑一下保存就好了
大约 2 年之前 回复
SunflowerGirlWKL
冬雷zz 单表不需要联合主键
大约 2 年之前 回复
qq_42715594
qq_42715594 ....
大约 2 年之前 回复

建错了吧。联合主键不能为空的

qq_42715597
qq_42715597
大约 2 年之前 回复
asdwater1
asdwater1 主键不能为空的
大约 2 年之前 回复
weixin_39362704
奔波儿灞??
大约 2 年之前 回复

先删除主键约束,主键约束名可以在图形化中表下的键或约束中看到
alter table table1
drop pk_主键约束名
然后在添加联合主键
alter table table1
#add constraint pk_table1_a_b primary key (a,b)

主键的作用就是确认唯一性呢,把主键删掉之后是可以插入相同数据,可是此时在设置主键生效,发现有相同的数据,是没法设置的,所以肯定不行的。如果就没有主键冲突,那随时可以删除主键,添加主键(如果主键有外键关联的情况下,也不一定能够删除成功的)。

http://www.cnblogs.com/Impulse/articles/5175883.html PRIMARY KEY 约束唯一标识数据库表中的每条记录。主键必须包含唯一的值。主键列不能包含 NULL 值。每个表都应该有一个主键,并且每个表只能有一个主键。主键

先删除主键约束,主键约束名可以在图形化中表下的键或约束中看到
alter table table1
drop pk_主键约束名
然后在添加联合主键
alter table table1
#add constraint pk_table1_a_b primary key (a,b)

先删除主键约束,主键约束名可以在图形化中表下的键或约束中看到

你这个显示是空白,但实际上不是NULL吧?
主键看起来是对的,不应该为NULL,但里面说不定是个空格。。。再仔细检查清楚吧

楼上说的对,null 会直接显示null 你这个空字符串, 至于你的联合主键没管用应该是创建失败了吧,或者没保存?

先删除主键约束,主键约束名可以在图形化中表下的键或约束中看到。
再添加联合主键

共11条数据 1 尾页
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问