MySQL的约束问题
来源:互联网 发布:域名中.net是什么意思 编辑:程序博客网 时间:2024/05/06 06:48
约束的目的是为了保证数据的完整性和一致性。
约束的分类:
针对一个字段使用,称为列级约束;针对两个或者两个以上字段使用,称为表级约束。
按照功能划分:非空约束,主键约束,唯一约束,默认约束,外键约束。
外键约束的作用,保证数据的完整性和一致性,实现数据表一对一以及一对多的关系。(关系型数据库的由来)
创建外键约束的要求:
1,父表和子表必须有相同的存储引擎,禁止使用临时表。
子表指具有外键列的表,子表参照的表为父表
2,子表和父表的存储引擎只能是InnoDB。
3,外键列(加过foreign关键词的列)和参照列必须有相似数据类型,若是数字,则要求长度和是否有符号位必须相同,若是字符,则长度可以不同。
4,外键列和参照列必须创建索引。外键列没有索引MySQL自动创建索引。
外键约束的参照操作
1,CASCADE 从父表删除或者更新且自动删除或更新子表中匹配的行
2 , SET NULL 从父表删除或者更新行,并设置子表中的外键列为NULL。如果使用该选项,必须保证子表列没有指定NOT NULL。
3 , RESTRICT 拒绝对父表的删除或更新操作
4 , NO ACTION 标准的SQL关键字在MYSQL中与RESTRICT相同
表级约束和列级约束
一个数据列建立的约束称为列级约束。
多个数据列建立的约束称为表级约束。
列级约束和表级约束的区别:
列级约束可以在列定义时声明也可以在列定义后声明。
表级约束只能在列定义后声明。
0 0
- MySQL的约束问题
- mysql建表外键约束的问题
- MySQL中操作表的约束问题
- mysql的约束
- MySQL的约束
- MySQL的约束
- mysql的约束
- MySQL数据库的约束
- mysql 的 check约束
- mysql的约束
- mysql的约束
- mysql的约束
- MySQL表的约束
- mysql导入数据时的外键约束问题
- Mysql中定义外键约束出现的问题
- 关于mysql创建约束时遇到的问题。
- 关于mysql删除唯一约束的问题(求解答)
- mysql约束中遇到的一些奇葩版本问题
- hdu 1823 Luck and Love
- 一个“永不结束”的服务端进程
- 深入理解SELinux SEAndroid
- EasyUI combobox下拉列表框--下拉列表框的onShowPanel事件
- 简单的Queue
- MySQL的约束问题
- iOS8扩展插件Extension的开发
- 设计模式:设计模式经典总结
- NJUPT JAVA语言 综合图形界面程序设计
- 求最大公约数
- Lua中的元表与元方法学习总结
- Download功能的实现
- Echarts小感
- 深入理解SELinux SEAndroid 第二部分