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中,据说 ...
随机推荐
- 6、Django实战第6天:用户登录
今天开始,我们需要来写后台逻辑了.... 后台逻辑代码都是编写在views.py文件里面,今天要完成的登录功能,因此来编辑users.views.py 这里我们根据请求方法来判断分为2种情况,网页默认 ...
- 带WHERE子句的DELETE语句
由于前面我们执行“DELETE FROM T_Person”语句将数据表T_Person中的数据全部 删除了,为了演示带WHERE 子句的DELETE 语句,我们需要重新插入一些数据到T_Person ...
- Web目录全能扫描工具DirBuster
Web目录全能扫描工具DirBuster Kali Linux提供的目录扫描工具DirBuster支持全部的Web目录扫描方式.它既支持网页爬虫方式扫描,也支持基于字典暴力扫描,还支持纯暴力扫描. ...
- 【二分答案】【最短路】bzoj1614 [Usaco2007 Jan]Telephone Lines架设电话线
对于二分出的答案x而言,验证答案等价于将所有边权>x的边赋成1,否则赋成0,然后判断从1到n的最短路是否<=K. #include<cstdio> #include<cs ...
- python3 开发面试题(生成列表)6.1
话不多说直接上题: 生成如下列表: [[0, 0, 0, 0, 0], [0, 1, 2, 3, 4], [0, 2, 4, 6, 8], [0, 3, 6, 9, 12]] # 方式一 list1 ...
- 8.3(java学习笔记)动态编译(DynamicCompiler)与动态运行(DynamicRun)
一.动态编译 简单的说就是在运行一个java程序的过程中,可以通过一些API来编译其他的Java文件. 下面主要说动态编译的实现: 1.获取java编译编译器 2.运行编译器(须指定编译文件) 获取编 ...
- 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 ...
- Shell中 调用/引用/包含 另外的脚本文件的两种方法
脚本 first (测试示例1) #!/bin/bash echo 'your are in first file' 问)在当前脚本文件中调用另外一个脚本文件? 方法一: 使用 source 脚本 s ...
- 【FTP】java FTPClient 文件上传内容为空,文件大小为0
问题:如题所述,使用FTPClient上传至FTP服务器, 表现如下:①文件大小为0 ②上传很小的文件,但是要花费很长的时间,20K要花费2分钟甚至更久 ③没有任何的报错,没有任何的乱码 解决方法: ...
- IP windows相关
nbtstat: 假设 我们 通过net view 获取了 局域网内一些计算机名 如上标红的计算机名称 如何 才能获取计算机的ip呢? 接下来使用 nbtstat -a 列出远程机器的名称表: ...