猿问

我想建立约束,该表只允许出现一条对应A列的有效数据,请问该怎么写?

sql server 一个table 有ABC三列,C列表示数据有效无效,我想建立约束,该表只允许出现一条对应A列的有效数据,但可以出现多条对应A列的失效数据。
例如:
A B C
k1 v1 Y -----ok
k1 v2 N -----ok
k2 v1 Y -----ok
k1 v3 N -----ok
k1 v4 Y -----不允许
请问怎么写约束?
谢谢..

GCT1015
浏览 148回答 1
1回答

跃然一笑

SQL Server中如何给表添加主键约束,前面我们说了如何运用SQL Server来创建数据库、表、列,这次我们来解决如何给列中添加主键约束呢?下面为大家分享了两种方法希望大家能够速学速懂。23在如下图中大家可以看到的是一个Student表,其中表中可以看到一个StudentNo的列,今天主要来说的就是针对如何给这个StudentNo来添加一个主键约束。(这里也希望大家能够学以致用)4方法一:首先我们在这个StudentNo列上用你的鼠标右击,然后选择里面的修改,进行点击,弹出如下界面5紧接着会有如下图中所示的窗口内容,这里我们选择里面的StudentNo,然后右击选择设置主键。6设置完毕之后,选择ctrl + S 保存7保存完毕之后,我们这边再查看我们设置的主键时候,他那边没有显示你设置成功,这里我们需要在你的表上右击,选择刷新8刷新之后,我们就可以看到你设置的主键了,在我们的主键列表中我们同样也可以看到已将设置成功。9方法二:这里我们运用代码进行主键的设置,选择左上角的新建查询,会弹出如下的选择框进行代码的输入10输入如下图所示的代码:alter table Studentadd constraint PK_StudentNo Primary key (StudentNo)这里呢我们对这里的代码进行解释:alter table 表名add constraint PK_列名 Primary key (列名)11输入完毕之后呢,我们需要进行的是,选择全部的内容,然后选择上方的执行按钮,然后点击执行12执行完毕之后,在消息框中我们可以看到命令已成功完成13同样这里我们还是不能够看到我们的主键是已将设置成功的,这里我们同样是需要选择右击表名或者列名然后选择刷新,这样就可以显示出来了。
随时随地看视频慕课网APP

相关分类

SQL Server
我要回答