mysql约束

一.概念

约束是用于作用于表中字段上的规则,用于限制存储在表中的数据。

2.目的

保证数据库中数据的正确、有效性、和完整性。

3.分类

4.案例

1.创建表

2.插入数据

3.查看数据

1.id约束

可以看到id在自增

2.name的null约束

3.check约束

4.default约束

5.外键约束

外键约束用来让两张表的数据之间建立连接,从而保证数据的一致性和完整性。

但是现在我们这样创建这样两张表,他们只要逻辑上的关系 如果把研发部删了 ,emp表却还是写着1号部分,我们需要建立外键关系

1.添加外键

此时如果你想要删除一个父表的研发部,他将会告诉你,这是一个父表,你还关联了一个子表

这样就保证了我们数据的一致性和完整性

2.删除外键

alter table emp drop foreign key 外键名;

3.外键删除更新行为

1.cascade(级联)

更新

现在我们把研发部为1的改为6,子表也会改为6

删除

把研发部删除,也会跟着删除对应有关研发部的所有记录

2.set null

2.1更新研发部

改为6

2.2删除研发部

删除6

相关推荐
不脱发的程序猿34 分钟前
纳指ETF量化策略
数据库·人工智能·1024程序员节
程序员塔塔喵1 小时前
【MySQL篇|第一篇】索引失效的情况
数据库·mysql·索引失效
北京青蓝智慧马老师2 小时前
比外部黑客更难防的,是那个有权限的自己人(3 个脱敏复盘)
大数据·数据库·人工智能
笃行3502 小时前
拆一台数据集成产品:KFS 的骨架、肌肉和神经
数据库
4SAPI2 小时前
搭建 AI 数据分析工具大模型 API 选型指南
数据库·人工智能·架构·php·1024程序员节
码士集团小青4 小时前
面霸篇:高频 Java 基础问题(核心卷一)
linux·服务器·数据库·redis·缓存·1024程序员节
LMT流氓兔5 小时前
第五单元——第十二课:把脚本整理成项目
java·数据库·python·langchain·1024程序员节
cuijiecheng20185 小时前
WeFlow 无法使用怎么办?一次数据库组件到期问题的排查与修复
数据库·oracle
一条泥憨鱼6 小时前
【Redis | 黑马点评】附近商铺功能源码解读
数据库·redis·缓存
念何架构之路7 小时前
Go reflect 包:结构体反射 —Field、Tag 与 VisibleFields
java·数据库·golang