SQL server2000里的CHECK约束有哪些?
我是初学者。就我是想在一行内让它输入10个数字,要求第一个和第二个只能是1和0,第三和第四还有第五为数字。第六为下划线,后面的都为字母。谁知道的帮帮忙好吗?谢谢了。!...
我是初学者。就我是想在一行内让它输入10个数字,要求第一个和第二个只能是1和0,第三和第四还有第五为数字。第六为下划线,后面的都为字母。谁知道的帮帮忙好吗? 谢谢了。!
展开
展开全部
用Check基本不可能啊。你可以编个存储过程: create function validname ( @name nvarchar(100) ) returns bit as begin declare @len int declare @i int declare @c nvarchar(1) declare @ret bit set @len=len(@name) set @i=1 set @ret=1 while @i<=@len begin set @c=substring(@name,@i,1) if @c not like '[1-9]' and @c not like '[a-z]' and @c <>'_' begin set @ret=0 break end set @i=@i+1 end return @ret end 调用的时候可以写在存储过程里,假设传进存储过程的用户名在变量@username里, if dbo.validname(@username)=0 return 不符合规则的直接return,如果,符合在后边的语句内插入就行了。 当然,不一定非在存储过程里调用,触发器里也可以,怎么用,你根据情况自己设计吧。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询