【发布时间】:2013-07-08 14:30:18
【问题描述】:
我正在使用 sql server 2008,我有一种情况,我想检查一个列值,相同的值不应插入超过 10 次
我的桌子是
uID devs
---------------
1 SLS
2 SRS
3 SLS
我想检查一下开发人员,相同的值只能记录 10 次,不能超过。请指导我
【问题讨论】:
-
如果当前有 9 行,并且插入尝试添加 2 行,会发生什么?另外,超出限制时的一般行为应该是什么?默默地丢弃旧行或新行,或者抛出错误,还是别的什么?
-
使用插入后操作创建触发器。声明一个整数变量值@counter,然后选择:SELECT @counter = COUNT(*) FROM yourtable WHERE devs = NEW.devs If @counter > 10 对uID最大的dev进行DELETE。
标签: sql sql-server sql-server-2005 sql-server-2008-r2