一:约束

作用:是为了保证数据的完整性而实现的一套机制,它具体的根据各个不同的数据库的实现而有不同的工具(约束);

这里主要讲解mysql的约束:

1、非空约束:not null;

指示某列不能存储 NULL 值

2、唯一约束:unique();uk

unique约束的字段,要求必须是唯一的,但null除外;

3、主键约束:primary key();pk

主键约束=not  null + unique,确保某列(或两个列多个列的结合)有唯一标识,有助于更容易更快速地找到表中的一个特定的记录。

4、外键约束:foreign  key () references (参考),fk

保证一个表中的数据匹配另一个表中的值的参照完整性。语法:constraint  fk_dept_id   foreign key  (dept_id)  references  dept(dept_id);

5、自增约束:auto_increment

6、默认约束:default

给定默认的值

7、检查性约束:check

保证列中的值符合指定的条件。

示例:

create table member(
id int(10),
phone int(15) unsigned zerofill,
name varchar(30) not null,
constraint uk_name unique(name),
constraint pk_id primary key (id),
constraint fk_dept_id foreign key (dept_id,字段2)
references dept(主表1)(dept_id)
);

注:

//constraint  uk_name   可以省略不写。uk_name  唯一约束名称;

//pk_id     主键约束名称;

//fk_dept_id   外键约束名称

二:索引

作用:快速定位特定数据,提高查询效率,确保数据的唯一性快速定位特定数据;可以加速表和表之间的连接,实现表与表之间的参照完整性,使用分组和排序语句进行数据检索时,可以显著减少分组和排序的时间全文检索字段进行搜索优化;

索引的种类:

1、主键索引(primary   key);

2、唯一索引(unique);

3、常规索引(index);

4、全文索引(full  text);

总结:约束是为了保证表数据的完整性,索引是为了提高查询效率,两者作用不一样!其次种类也不一样。

1.         - 指示某列不能存储 NULL 值。

最新文章

  1. AJax中post与get请求注意事项
  2. About_AJAX_03
  3. 微信微博分享注意事项(sharesdk)
  4. Sqli-labs less 25a
  5. 【转】Eclipse常用快捷键
  6. JavaWeb中登陆功能
  7. [Stephen]关于Ext.net fileupload 的兼容性解决问题
  8. HTML资源(推荐)
  9. Bugzilla使用手册及解决方案
  10. Server SAN:弄潮儿云计算时代
  11. hdu 5344 MZL's xor
  12. Modis 陆地产品格网
  13. Java虚拟机运行时内存区域简析
  14. 别人的Linux私房菜(4)安装CentOS7
  15. Topographic ICA as a Model of Natural Image Statistics(作为自然图像统计模型的拓扑独立成分分析)
  16. ubuntu18重装后 基本需求安装
  17. 通过网址request到response经历的过程
  18. SVG绘制图形
  19. html input控件总结
  20. 【QT】error: macro "SIGNAL" passed 3 arguments, but takes just 1

热门文章

  1. day-12 python实现简单线性回归和多元线性回归算法
  2. windows基础知识(win7)
  3. 《鸟哥的Linux私房菜》读书笔记
  4. 常用的gif加载动态图片
  5. OO5-7次作业总结
  6. [剑指Offer] 37.数字在排序数组中出现的次数
  7. Nginx学习笔记之加强篇
  8. Hibernate常用方法之_插入
  9. 后缀数组 模板题 hdu1403(最长公共(连续)子串)
  10. jsp电子商务 购物车实现之三 购物车