2008-05-06
SQL server控制表中的列数
问题:
例如 有表
student
{
lesson varchar(3)
name varchar(3)
}
要让 distinct(lesson) 不能超过10
能通过数据库表的约束 限制吗?
如何实现
问题的解决:
--创建表
create table student
(
lesson varchar(3),
name varchar(3)
)
--创建函数
create function f_check()
returns int
as
begin
declare @num int
select @num=count(distinct lesson) from student
return @num
end
go
--添加约束
alter table student add constraint student_lesson_check check(dbo.f_check()<=10)
发表评论
提醒: 该博客已发表在公共论坛,博客所有留言会成为论坛回贴,留言请注意遵守论坛发贴规则
- 浏览: 2561 次

- 详细资料
搜索本博客
最近加入圈子
最新评论
-
一个截取字符串的方法
呵呵谢谢各位,我是想让他成为一个通用的东西,以后在编写存储过程时,可以直接用,就 ...
-- by 心似海 -
动态SQL
既然是存储过程,当temp_str的值有很多的时候, 可以考虑把temp_str ...
-- by armorking -
一个截取字符串的方法
用函数跑得会比较慢。。。不如再来个表像二楼说的1:N 想了想,写成下面这样貌视 ...
-- by qiuyuanshan -
一个截取字符串的方法
明明A、B两个字段是1:N关系, 用两张主从关系的表来描述,非常轻松 却偏偏要把 ...
-- by armorking -
NET递归调用10转(2-34) ...
Int32.ToString(34);
-- by deerchao






评论排行榜