请问,如何实现这样的check约束?

jonsonzxw 2007-12-20 04:11:38
数据库中有两个字段A和B,要求是如果B不同,那么A必须也不同


A B
----------------------
1 aa
1 aa
1 aa
1 aa
2 bb
2 bb
2 bb
这样就正确,但不得现下面这种情况

1 aa
1 aa
1 aa
1 aa
1 bb
1 bb
1 bb

这样的SQL约束如何写呢
...全文
31 点赞 收藏 4
写回复
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
chuifengde 2007-12-20
create table a(A int,B varchar(20))
go
create trigger trigga on a
for insert,update
as
if exists(select 1 from a,inserted b where a.b<>b.b and a.a=b.a)
rollback

go
回复
jonsonzxw 2007-12-20
数据库中有两个字段A和B,要求是如果B不同,那么A必须也不同


A B
----------------------
1 aa
1 aa
1 aa
1 aa
2 bb
2 bb
2 bb
这样就正确,但不得现下面这种情况

1 aa
1 aa
1 aa
1 aa
1 bb
1 bb
1 bb

这样的SQL约束如何写呢
回复
chuifengde 2007-12-20
写触发器吧,约束不好作
回复
dawugui 2007-12-20
没看懂.
回复
发动态
发帖子
疑难问题
创建于2007-09-28

2.1w+

社区成员

MS-SQL Server 疑难问题
申请成为版主
社区公告
暂无公告