Atitit. 数据约束 校验 原理理论与 架构设计 理念模式java php c#.net js javascript mysql oracle
Atitit. 数据约束 校验 原理理论与 架构设计 理念模式java php c#.net js javascript mysql oracle
3. 检查约束 (Check Counstraint) 对该列数据的范围、格式的限制(如:年龄、性别等)2
4. 默认约束 (Default Counstraint) 该数据的默认值2
7. 断言约束:不必与特定的列绑定,可以理解为能应用于多个表的check约束,2
10.4. Fires before validate on a field. Available since version 1.4.3
10.7. Fires when validate on a field. Available since version 1.4.3
11.1. 日期,邮件,电话验证,年龄,长度验证,数字范围,格式验证,邮政编码验证 ,信用卡号码3
用户可以指明约束是启用的还是禁用的,当约束启用时,他增强了数据的完整性,否则,则反之,但约束始终存在于数据字典中。
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的更多相关文章
- 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 ...
- Atitit.html css 浏览器原理理论概论导论attilax总结
Atitit.html css 浏览器原理理论概论导论attilax总结 1.1. 浏览器是怎样工作的:渲染引擎,HTML解析(连载二)1 2. 5.1.1 DOM标准 1011 3. <We ...
- 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 ...
- Tomcat 架构原理解析到架构设计借鉴
Tomcat 发展这么多年,已经比较成熟稳定.在如今『追新求快』的时代,Tomcat 作为 Java Web 开发必备的工具似乎变成了『熟悉的陌生人』,难道说如今就没有必要深入学习它了么?学习它我们又 ...
- 一面数据: Hadoop 迁移云上架构设计与实践
背景 一面数据创立于 2014 年,是一家领先的数据智能解决方案提供商,通过解读来自电商平台和社交媒体渠道的海量数据,提供实时.全面的数据洞察.长期服务全球快消巨头(宝洁.联合利华.玛氏等),获得行业 ...
- (札记)Java应用架构设计-模块化模式与OSGi
本书主要模块化模式的优点.模块化方法与模式.OSGi简单使用等内容.分3大部分: 第一部分介绍了模块化概念.为什么要模块化,以及一些模块化要考虑的东西,如模块粒度,依赖关系,重用性灵活性等. 第二部分 ...
- Java应用架构设计模块化模式与OSGI摘录
在Java中,最适合模块化的单元就是Jar文件. 代码层面我们关注的太多了,熟练的开发人员现在很少争论使用模式的好处,也不再识别哪个模式适合当前需要,因为都能够本能地使用各种设计原则和模式,从GoF的 ...
- MVC实用架构设计(三)——EF-Code First(4):数据查询
前言 首先对大家表示抱歉,这个系列已经将近一个月没有更新了,相信大家等本篇更新都等得快失望了.实在没办法,由于本人水平有限,写篇博客基本上要大半天的时间,最近实在是抽不出这么长段的空闲时间来写.另外也 ...
- MVC实用架构设计(三)——EF-Code First(5):二级缓存
前言 今天我们来谈谈EF的缓存问题. 缓存对于一个系统来说至关重要,但是是EF到版本6了仍然没有见到有支持查询结果缓存机制的迹象.EF4开始会把查询语句编译成存储过程缓存在Sql Server中,据说 ...
随机推荐
- 【Android】自定义View
内置组件经常不满足我们的需求,那么就要自己来重写了,一般需要实现以下几个父类方法: 1.onMeasure 决定内部View的宽和高,以及自身的宽和高 2.onLayout 决定子View的放置位置 ...
- oracle delete all index own by table
BEGIN FOR ind IN (SELECT index_name FROM user_indexes WHERE table_name = '') LOOP execute immediate ...
- luogu P1009 阶乘之和
题目描述 用高精度计算出S=1!+2!+3!+…+n!(n≤50) 其中“!”表示阶乘,例如:5!=5*4*3*2*1. 输入输出格式 输入格式: 一个正整数N. 输出格式: 一个正整数S,表示计算结 ...
- 爬取维基百科人物介绍,并使用pymysql存储到数据库
代码如下: from urllib.request import urlopen from bs4 import BeautifulSoup import re import datetime imp ...
- mysql replication 复制的一些问题
1 过大的复制延迟 mysql 的复制延迟是一个常见问题,现在已经有一些解决方案,如淘宝开发的一些工具 2 没有磁盘空间 复制导致磁盘空间塞满,二进制日志.中继日志或临时文件把磁盘塞满,slave ...
- 【SQL Server】sql server更改了数据表的字段/新增数据表的字段 无法保存
sql server更改了数据表的字段/新增数据表的字段 无法保存 解决方法:进入 工具-->选项-->Designers-->表设计器和数据库设计器-->取消勾选 即可
- 直接拿来用!最火的Android开源项目(二)
在<直接拿来用!最火的Android开源项目(一)>中,我们详细地介绍了GitHub上最受欢迎的TOP20 Android开源项目,引起了许多读者的热议,作为开发者,你最常用的是哪些开源项 ...
- iOS -- 解决iOS11中navigationBar上使用initWithCustomView按钮图片错位 frame无效
在iOS11上当使用如下代码设置时 UIButton *shareButton = [UIButton buttonWithType:(UIButtonTypeCustom)]; shareButto ...
- ThreadPoolExecutor 的三种提交任务方式
学习内容: ExecutorService线程池的应用... 1.如何创建线程池... 2.调用线程池的方法,获取线程执行完毕后的结果... 3.关闭线程... 首先我们先了解一下到底什么是线程池 ...
- springBoot框架的一些概念
Spring的发展史1. Spring1.x 时代 在Spring1.x时代,都是通过xml文件配置bean,随着项目的不断扩大,需要将xml配置分放到不同的配置文件中,需要频繁的在java类和xml ...