Atitit. 数据约束 校验 原理理论与 架构设计 理念模式java php c#.net js javascript mysql oracle

1. 主键1

2. uniq  index2

3. 检查约束 (Check Counstraint) 对该列数据的范围、格式的限制(如:年龄、性别等)2

4. 默认约束 (Default Counstraint) 该数据的默认值2

5. trigger2

6. 外键机制  参照完整性:2

7. 断言约束:不必与特定的列绑定,可以理解为能应用于多个表的check约束,2

8. NOT NULL约束3

9. Lang3

10. 验证事件3

10.2. onBeforeValidate3

10.3. none3

10.4. Fires before validate on a field. Available since version 1.4.3

10.5. onValidate3

10.6. valid3

10.7. Fires when validate on a field. Available since version 1.4.3

11. 常用的验证3

11.1. 日期,邮件,电话验证,年龄,长度验证,数字范围,格式验证,邮政编码验证   ,信用卡号码3

11.2. 默认校验规则3

12. 参考6

用户可以指明约束是启用的还是禁用的,当约束启用时,他增强了数据的完整性,否则,则反之,但约束始终存在于数据字典中。

1. 主键

主键约束(Primay Key Coustraint) 唯一性,非空性

2. uniq  index

-唯一约束 (Unique Counstraint)唯一性,可以空,但只能有一个

3. 检查约束 (Check Counstraint) 对该列数据的范围、格式的限制(如:年龄、性别等)

mysql在建表的时候不需要设定检查约束,只要把数据类型正确设定就可以了 约束是在程序里控制的,最好是在录入进进行检查,或在写入时进行 检查。只要你董得程序

oracle检查列的类型和范围。语法:CONSTRAINT [constraint_name] CHECK (condition); 比如:check(Age >2)

是指表中的列必须满足某种特定的数据类型约束,其中约束又包括取值范围、精度等规定。

4. 默认约束 (Default Counstraint) 该数据的默认值

5. trigger

6. 外键机制  参照完整性:

作者:: 绰号:老哇的爪子 ( 全名::Attilax akbar al rapanui 阿提拉克斯 阿克巴 阿尔 拉帕努伊 ) 汉字名:艾龙,  EMAIL:1466519819@qq.com

转载请注明来源: http://www.cnblogs.com/attilax/

7. 断言约束:不必与特定的列绑定,可以理解为能应用于多个表的check约束

因此必须在表定义之外独立创建断言。

8. NOT NULL约束

9. Lang

10. 验证事件

10.1.1.1. Events

Name

Parameters

Description

10.1. onBeforeValidate

10.2. none

10.3. Fires before validate on a field. Available since version 1.4.

10.4. onValidate

10.5. valid

10.6. Fires when validate on a field. Available since version 1.4.

11. 常用的验证

11.1. 日期,邮件,电话验证,年龄,长度验证,数字范围,格式验证,邮政编码验证   ,信用卡号码

11.2. 默认校验规则

序号

规则

描述

1

required:true

必须输入的字段。

2

remote:"check.php"

使用 ajax 方法调用 check.php 验证输入值。

3

email:true

必须输入正确格式的电子邮件。

4

url:true

必须输入正确格式的网址。

5

date:true

必须输入正确格式的日期。日期校验 ie6 出错,慎用。

6

dateISO:true

必须输入正确格式的日期(ISO),例如:2009-06-23,1998/01/22。只验证格式,不验证有效性。

7

number:true

必须输入合法的数字(负数,小数)。

8

digits:true

必须输入整数。

9

creditcard:

必须输入合法的信用卡号。

10

equalTo:"#field"

输入值必须和 #field 相同。

11

accept:

输入拥有合法后缀名的字符串(上传文件的后缀)。

12

maxlength:5

输入长度最多是 5 的字符串(汉字算一个字符)。

13

minlength:10

输入长度最小是 10 的字符串(汉字算一个字符)。

14

rangelength:[5,10]

输入长度必须介于 5 和 10 之间的字符串(汉字算一个字符)。

15

range:[5,10]

输入值必须介于 5 和 10 之间。

16

max:5

输入值不能大于 5。

17

min:10

输入值不能小于 10。

alpha

returns false if the form element contains anything other than alphabetical characters.

no

alpha_numeric

returns false if the form element contains anything other than alpha-numeric characters.

no

alpha_dash

is_natural

returns false if the form element contains anything other than a natural number: 0, 1, 2, 3, etc.

no

is_natural_no_zero

returns false if the form element contains anything other than a natural number, but not zero: 1, 2, 3, etc.

no

valid_ip

returns false if the supplied IP is not valid.

no

valid_base64

returns false if the supplied string contains anything other than valid Base64 characters.

no

valid_credit_card

returns false if the supplied string is not a valid credit card

no

valid_url

returns false if the supplied string is not a valid url

no

is_file_type

returns false if the supplied file is not part of the comma separated list in the paramter

12. 参考

数据库中的五种约束 - SQL Server(mssql)数据库栏目 - 红黑联盟.htm

数据完整性约束_百度百科.htm

http://rickharrison.github.io/validate.js/

Documentation - jQuery EasyUI.htm

jQuery Validate   菜鸟教程.htm

jquery.validate.js表单验证 - SunRain117 - 博客园.htm

Atitit. 数据约束 校验 原理理论与 架构设计 理念模式java php c#.net js javascript mysql oracle的更多相关文章

  1. Atitit. servlet 与 IHttpHandler  ashx  listen 和HttpModule的区别与联系 原理理论 架构设计   实现机制    java php c#.net js javascript  c++ python

    Atitit. servlet 与 IHttpHandler  ashx  listen 和HttpModule的区别与联系 原理理论 架构设计   实现机制    java php c#.net j ...

  2. Atitit.html css  浏览器原理理论概论导论attilax总结

    Atitit.html css  浏览器原理理论概论导论attilax总结 1.1. 浏览器是怎样工作的:渲染引擎,HTML解析(连载二)1 2. 5.1.1 DOM标准 1011 3. <We ...

  3. Atitit  文件上传  架构设计 实现机制 解决方案  实践java php c#.net js javascript  c++ python

    Atitit  文件上传  架构设计 实现机制 解决方案  实践java php c#.net js javascript  c++ python 1. 上传的几点要求2 1.1. 本地预览2 1.2 ...

  4. Tomcat 架构原理解析到架构设计借鉴

    Tomcat 发展这么多年,已经比较成熟稳定.在如今『追新求快』的时代,Tomcat 作为 Java Web 开发必备的工具似乎变成了『熟悉的陌生人』,难道说如今就没有必要深入学习它了么?学习它我们又 ...

  5. 一面数据: Hadoop 迁移云上架构设计与实践

    背景 一面数据创立于 2014 年,是一家领先的数据智能解决方案提供商,通过解读来自电商平台和社交媒体渠道的海量数据,提供实时.全面的数据洞察.长期服务全球快消巨头(宝洁.联合利华.玛氏等),获得行业 ...

  6. (札记)Java应用架构设计-模块化模式与OSGi

    本书主要模块化模式的优点.模块化方法与模式.OSGi简单使用等内容.分3大部分: 第一部分介绍了模块化概念.为什么要模块化,以及一些模块化要考虑的东西,如模块粒度,依赖关系,重用性灵活性等. 第二部分 ...

  7. Java应用架构设计模块化模式与OSGI摘录

    在Java中,最适合模块化的单元就是Jar文件. 代码层面我们关注的太多了,熟练的开发人员现在很少争论使用模式的好处,也不再识别哪个模式适合当前需要,因为都能够本能地使用各种设计原则和模式,从GoF的 ...

  8. MVC实用架构设计(三)——EF-Code First(4):数据查询

    前言 首先对大家表示抱歉,这个系列已经将近一个月没有更新了,相信大家等本篇更新都等得快失望了.实在没办法,由于本人水平有限,写篇博客基本上要大半天的时间,最近实在是抽不出这么长段的空闲时间来写.另外也 ...

  9. MVC实用架构设计(三)——EF-Code First(5):二级缓存

    前言 今天我们来谈谈EF的缓存问题. 缓存对于一个系统来说至关重要,但是是EF到版本6了仍然没有见到有支持查询结果缓存机制的迹象.EF4开始会把查询语句编译成存储过程缓存在Sql Server中,据说 ...

随机推荐

  1. 6、Django实战第6天:用户登录

    今天开始,我们需要来写后台逻辑了.... 后台逻辑代码都是编写在views.py文件里面,今天要完成的登录功能,因此来编辑users.views.py 这里我们根据请求方法来判断分为2种情况,网页默认 ...

  2. 带WHERE子句的DELETE语句

    由于前面我们执行“DELETE FROM T_Person”语句将数据表T_Person中的数据全部 删除了,为了演示带WHERE 子句的DELETE 语句,我们需要重新插入一些数据到T_Person ...

  3. Web目录全能扫描工具DirBuster

    Web目录全能扫描工具DirBuster   Kali Linux提供的目录扫描工具DirBuster支持全部的Web目录扫描方式.它既支持网页爬虫方式扫描,也支持基于字典暴力扫描,还支持纯暴力扫描. ...

  4. 【二分答案】【最短路】bzoj1614 [Usaco2007 Jan]Telephone Lines架设电话线

    对于二分出的答案x而言,验证答案等价于将所有边权>x的边赋成1,否则赋成0,然后判断从1到n的最短路是否<=K. #include<cstdio> #include<cs ...

  5. python3 开发面试题(生成列表)6.1

    话不多说直接上题: 生成如下列表: [[0, 0, 0, 0, 0], [0, 1, 2, 3, 4], [0, 2, 4, 6, 8], [0, 3, 6, 9, 12]] # 方式一 list1 ...

  6. 8.3(java学习笔记)动态编译(DynamicCompiler)与动态运行(DynamicRun)

    一.动态编译 简单的说就是在运行一个java程序的过程中,可以通过一些API来编译其他的Java文件. 下面主要说动态编译的实现: 1.获取java编译编译器 2.运行编译器(须指定编译文件) 获取编 ...

  7. C#测试程序运行时间

    一.用C#自带的StopWatch函数 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 using System; usi ...

  8. Shell中 调用/引用/包含 另外的脚本文件的两种方法

    脚本 first (测试示例1) #!/bin/bash echo 'your are in first file' 问)在当前脚本文件中调用另外一个脚本文件? 方法一: 使用 source 脚本 s ...

  9. 【FTP】java FTPClient 文件上传内容为空,文件大小为0

    问题:如题所述,使用FTPClient上传至FTP服务器, 表现如下:①文件大小为0 ②上传很小的文件,但是要花费很长的时间,20K要花费2分钟甚至更久 ③没有任何的报错,没有任何的乱码 解决方法: ...

  10. IP windows相关

    nbtstat: 假设 我们  通过net view 获取了 局域网内一些计算机名 如上标红的计算机名称 如何 才能获取计算机的ip呢? 接下来使用  nbtstat -a  列出远程机器的名称表: ...