计算函数和IF条件(SQL)

时间:2016-05-24 11:26:20

标签: sql sql-server

SELECT COUNT(Student_ID) AS 'StudentCount'
FROM CourseSemOne
WHERE Student_ID =1;

我想为此ID(Student_ID=1)添加两个值。如果管理员为此ID添加了两个以上的值,那么我想给我看一条消息"抱歉!你不能添加两个以上的值"。

2 个答案:

答案 0 :(得分:0)

尝试以下

create table student (id int)
go

insert into student (id)
select 1
union
select 2


declare @value int = 3

IF EXISTS
(
select 1
from student 
where id = @value
Group by id
having COUNT(id)  > 1
)
BEGIN
      RAISERROR( 'you cannot add more than two values',16,1);
      RETURN;
END
ELSE
BEGIN
     INSERT INTO student (ID)
     SELECT @value
END

答案 1 :(得分:0)

防止Student_ID column中重复条目的最佳方法是在该列上添加UNIQUE CONSTRAINTUNIQUE INDEX

当有人试图创建duplicate Student_ID时,让应用程序显示所需文本的最佳方法是捕获应用程序中的constraint violation错误,并显示自定义错误消息代替。