CHECK 约束

  • 前言
    • 使用check对字符格式进行约束
    • 约束数值范围
    • 约束数据的取值范围

前言

在一次作业当中需要在创建表的时候对数据进行一些约束,当进行查阅资料的时候发现网上对于 check 约束 讲解的博客少得可怜,因此写了这篇一方面是对于自己做完作业后的总结,另一方面是对后来者一个指导。

使用check对字符格式进行约束

例子:
Dtel必须11位,第1位必须是1,第2位只能是3、5、8;

在check中我们可以借用SQL中对字符操作的函数来进行辅助判断。
在这里:

  1. 对于第一个字符的长度限制,可以用length()函数。
  2. 对于后边的字符特定位的限制可以借用SQL语句中的正则表达式来进行。

SQL语句:

Dtel  varchar(30), check (length(Dtel)=11 and ( Dtel like '13%' or Dtel like '15%' or Dtel like '18%'))

约束数值范围

例子:
年龄应大于等于5,小于等于90;

SQL语句:

check ( Aage >= 5 and Aage <= 90 )

或者

Aage integer , check ( Aage between 5 and  90 )

约束数据的取值范围

例子;
角色只能是‘领衔主演’、‘主演’、‘客串’或‘其它’。

SQL语句:

role varchar(50), check (role in ('领街主演','主演','客串','其他'))

PostgreSQL ----- CHECK 约束相关推荐

  1. 在SQL和ERWIN中用自定义类型、规则和默认值实现check约束从而保证数据的完整性...

    ========================================================= /*创建一个名为list的规则,这条规则表明变量只能取0和1两个值*/ CREATE ...

  2. MySQL关于check约束无效的解决办法

    首先看下面这段MySQL的操作,新建一个含有a和b的表,其中a用check约束必须大于0,然而插入了一条(-2,1,1)的数据,其中a=-2,也是成功插入的. 所以MySQL只是check,但是不强制 ...

  3. oracle中check约束性别,关于Oracle Check类型约束的导入与启用

    今天有朋友问,Oracle的Check约束在indexfile中是否存在,导入后没有检查到. 我测试了一下,事实证明是可以的,Oracle的Check Constraints可以通过imp,使用ind ...

  4. mysql 创建表check如何使用_MySQL怎么使用check约束

    在数据库中,CHECK 约束是指约束表中某一个或者某些列中可接受的数据值或者数据格式(用于限制列中的值的范围). 在一些情况下,我们需要字段在指定范围的输入, 例如:性别只能输入 '男'或者'女',余 ...

  5. MySQL使用触发器实现check约束功能

    MySQL使用触发器实现check约束功能 MySQL可以使用check约束,但check约束对数据验证没有任何作用.所以我们可以使用触发器来实现check约束功能. -- 创建表 USE luo; ...

  6. SQLServer之修改CHECK约束

    使用SSMS数据库管理工具修改CHECK约束 1.打开数据库,选择数据表->右键点击->选择设计(或者展开约束,选择约束,右键点击,选择修改,后面步骤相同). 2.选择要修改的数据列-&g ...

  7. mysql删除check约束_高级SQL特性——约束与索引

    一.约束 1.约束的作用 对表中数据进行进一步限制,保证表中数据的完整性.一致性和正确性. 2.约束的分类 1)主键约束 主键能够唯一地标识表中的一行,比如学生表中的学生id. 它的主要作用就是能够将 ...

  8. mysql check约束无效_mysql数据库 check约束无效

    mysql> create table f1 (r1 int constraint tb_f1_r1_chk1 check (mod(r1,3)=0)); Query OK, 0 rows af ...

  9. mysql 约束1 100分_SQL SERVER CHECK语句,使用check约束限定成绩只能为0~100分

    mysql> create table f1 (r1 int constraint tb_f1_r1_chk1 check (mod(r1,3)=0)); Query OK, 0 rows af ...

最新文章

  1. 初识Restful架构
  2. Python-map、reduce、filter、sorted函数
  3. debian apt-get 更新源文件格式说明
  4. 使用Angular HTTP client对数据模型进行update操作
  5. 8种你可能正在写错的SQL用法
  6. MySQL中有外键时数据表的删除方法
  7. 基于面向对象的图片轮播(js原生代码)
  8. 【电赛】一阶卡尔曼滤波器 滤波效果良好
  9. html表单不允许修改,[问题]如何在表单里定义(form)仅仅可读,不可修改的列?
  10. 二维数组中的查找(java)
  11. python中快速删除实例对象中的所有属性
  12. python图片搜索_用Python构建图片处理搜索引擎
  13. rancher及灵雀云TKF中解决中文编码问题
  14. 如何写投资项目计划书?
  15. 最后一篇美国回忆-终结篇
  16. Linux 怎么防止 ssh 被暴力破解
  17. markdown表格内如何进行换行
  18. Android针对IC卡读写的NFC开发
  19. 利用Python预测股票价格
  20. 悟了,电商的千人千面系统,原来还可以这么搞

热门文章

  1. 基于嵌入式的远程温度检测控制(论文)
  2. 数据库基础:基本概念
  3. 最新完整前后端微商城电商购物系统源码+全开源的
  4. JavaScript图片弹窗
  5. IT 人的纠结:去大公司还是去小公司?
  6. MD5加密介绍、工具类的使用
  7. 五分钟学会如何用java解析json字符串!
  8. 访问控制的三种模型(DAC、MAC、RBAC)
  9. 搭建web服务器访问网页
  10. 设计用于汽车和车身SPC58NH92C3RMI0X\SPC560B50L1B4E0X微控制器