我在SQLServer中有一个出勤表,该表具有3个字段(ID,课程,日期),我希望该表在相同的日期和课程中不接受相同的ID,但是它可以记录不同日期或不同课程的ID。
我尝试在存储过程中针对这种情况添加命令,但不起作用。
您正在寻找Unique
约束。
请尝试以下方法:
Alter Table Attendance
Add Constraint uq_WhateverNameYouWant Unique (id, course, date)
这将强制表仅接受所有三个字段中的唯一值。
例如,如果表中具有以下值:
Id Course Date
1 101 2014-06-18
1 102 2014-06-18
2 101 2014-06-18
2 101 2014-06-19
如果您尝试添加以下内容:
Id Course Date
1 103 2014-06-18
它会允许的。但是,如果您尝试添加以下内容:
Id Course Date
1 101 2014-06-18
它将失败,因为这三个值的集合已经存在。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句