sql server可以定义的约束_数据库常见约束

sql server可以定义的约束_数据库常见约束SQLserver常见的约束条件1.检查只能是男或者女Sexin(‘男,女’)),Sex=‘男’orsex=‘女’)2.在一个范围中间Sage>0andsage<120Sagebetween12and303.长度大于某个值len(pwd)>6)//pwd为密码字段4.数大于某个值Sage>15.只能是8位字符,前两…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

SQL server常见的约束条件

1.检查只能是男或者女

Sex in(‘男,女’)),
Sex =‘男’ or sex =‘女’)

2.在一个范围中间

Sage>0 and sage<120
Sage between 12 and 30

3.长度大于某个值

len(pwd)>6) //pwd为密码字段

4.数大于某个值

Sage>1

5.只能是8位字符,前两位是 0 ,3~4位为数字,第 5 位为下划线,6~8位为字母

alter table 表名

字段 like ‘00[0-9][0-9]/_[a-z,A-Z][a-z,A-Z][a-z,A-Z]%’ escape ‘/’)and(len(字段)=8)

或者是

alter table 表名

字段 like ’00[0-9][0-9][_][a-z,A-Z][a-z,A-Z][a-z,A-Z]%’and(len(字段)=8)

6.电子邮箱要含有@符号

字段like ‘%@%’

7.SQL中用check约束一列的首字母为’s’

c字段 like ‘s%’

8.检查约束前3位和后8位均为数字字符:

字段like ‘[0-9][0-9][0-9]%[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]’

9.如何建立检查身份证的约束,身份证是18位,最后一位还有可能是X

select 身份证号 from 表名

where len(身份证号) = 18 and (right(身份证号,17) like ‘[0-9]’or right(身份证号,17) like ‘x’)

10.如何设置区号由0-9之间的数字组成

字段 LIKE ‘[0-9][0-9][0-9]’ or 字段 LIKE ‘[0-9][0-9][0-9][0-9]’or 字段LIKE ‘[0-9][0-9][0-9][0-9][0-9]’;

解释: 其中字段 LIKE ‘[0-9]…[0-9]’的号码由表示n位从0到9中的数组成。

字段 LIKE ‘[0-9][0-9][0-9]’ 表示3位的区号,如北京010;字段 LIKE ‘[0-9][0-9][0-9][0-9]’表示4位的区号,如三门峡0398; 字段 LIKE ‘[0-9][0-9][0-9][0-9][0-9]’表示5位的区号,如香港00852

11.最后回复时间 TLastClickT 发贴时间 TTime

最后回复时间 必须晚于 发贴时间 并且小于等于当前时间 使用GetDate()函数获取当前时间

设计表

在TLastClickT上右击

选择约束,新建,填入

([TLastClickT] > [TTime] and [TLastClickT] < GetDate())

或者

TiastReply(回帖时间)大于Ttime(发帖时间)在创表的同时

创建表的时候应该还没有回帖吧,为什么要用默认值?

可以添加一个约束 alter table topic alter column add check(TlastReply is null or TlastReply > Ttime)

12.定义前八位为数字或者 –

一共是15位,为CHAR型

字段 like’[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]%’) or len(字段)=15)

13.如何限制varchar字段不允许出现单引号的检查约束 !!!

设表为TALBENAME,不能有引号的字段为FIELDNAME 则:

ALTER TABLE tablename ADD CONSTRAINT CK_fieldname CHECK (not fieldname like ‘%’’%’)

14.在表中的某列中通过检查约束,让其有某些固定的值

check(sid like ‘bd[0-9][0-9][0-9][0-9][0-9][0-9]’)

add CONSTRAINT ck_num check(num like ‘[1][2] [4][_] [0-9][0-9] [0-9][a-z]’)

15.如何限制varchar字段不允许出现字符串的检查约束 !!!

设表名为TABLENAME,VARCHAR类型的字段为VAR_FIELD.则有:

ALTER TABLE [dbo].[TABLENAME] ADD CONSTRAINT [CK_TABLENAME] CHECK (isnumeric([VAR_FIELD]) = 1)

这样,在VAR_FIELD只要出现字段一旦出现非数字内容就会报告错误。

16.电话号码的格式必须为xxxx-xxxxxxxx或手机号11位

alter 表名 add constraint ck_字段名 check (字段 like ‘[0-9][0-9][0-9][0-9]_[0-9]…’ or len(字段)=11)

17.身份证号是18位且唯一的

alter 表名 add

constraint ck_字段名 check (len(字段名)=18 ),

constraint uk_字段名 unique(字段名)

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/182472.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Anaconda python3.6版本安装[通俗易懂]

    Anaconda python3.6版本安装[通俗易懂]官方地址在下面,3.6的对应的是Anaconda3-5.2,5.3以后的都是python3.7的不要看错了往下滑动就是了官方地址:https://repo.anaconda.com/archive/清华大学镜像:https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/…

    2022年6月6日
  • Ubuntu9.04上看电影加载中文字幕乱码问题

    Ubuntu9.04上看电影加载中文字幕乱码问题最近在我的Ubuntu9.04上看电影总是加载中文字幕的时候出现乱码,后来发现是字符编码的问题,今天休假在家就写了一个小的字符转码的程序,目前来说满足我自己的需求了,代码如下:importsys,ioiflen(sys.argv)!=2: print”Pleaseinputfilepath!”else: f1=io.open(sys.argv[1],”r”

    2022年7月11日
  • mysql获取当前时间的函数_Mysql获取函数

    mysql获取当前时间的函数_Mysql获取函数current_datecurrent_timecurrent_timestampcurdate()curtime()now()

    2022年10月5日
  • IM开发宝典:史上最全,微信各种功能参数和逻辑规则资料汇总「建议收藏」

    1、引言IM应用的初学者们,在补全了各种基础技术知识后(如果您仍不具备这些知识,建议马上阅读《新手入门一篇就够:从零开发移动端IM》),在动手编码实践时,很多时候纠结的并不是功能该如何实现,而是这个功能该实现成什么样(没有经验,我特玛能找谁问问?)。比如,最常见的纠结有以下这些:1)离线聊天消息该保存多久?2)好友请求应该保存多久?3)短视频消息中的视频时长设为多大合适?4…

    2022年4月9日
  • intellijidea激活码【最新永久激活】

    (intellijidea激活码)2021最新分享一个能用的的激活码出来,希望能帮到需要激活的朋友。目前这个是能用的,但是用的人多了之后也会失效,会不定时更新的,大家持续关注此网站~IntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,下面是详细链接哦~https://javaforall.net/100143.html…

    2022年3月28日
  • Java常见官网

    Java常见官网Javahttps://www.oracle.com/java/technologies/OpenJDKhttps://openjdk.java.net/w3c(万维网联盟)https://www.w3.org/apache(开源项目非盈利组织)https://www.apache.org/Oraclehttps://www.oracle.com/index.htmlMySQLhttps://www.mysql.com/mongoDB(分布式文件存储的数据库)https://www.

    2022年7月7日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号