SQLarchemy 实现外键及其四种约束讲解
一、表关系:
表之间的关系存在三种:一对一、一对多、多对多,而SQLARCHMY中的orm也可以模拟这三种关系。
因为一对一其实在SQLarchemy中底层是通过一对多的方式模拟的,所以先来看下一对多的关系。
外键:
使用SQLarchemy创建外键非常简单,在从表中加一个字段,指定这个字段外键的哪个字就可以了.从表中外键的字段,从表中的外键的字段,必须和主键的主表字段类型保持一致。
二、外键约束有以下几项:
1.restrict:若子表中有父表对应的关联数据,删除父表对应数据,会阻止删除,默认项
2.no action: 在mysql中,同restrict.
3.cascade:级联操作
4.set null:父表对应数据删除,子表对应数据项会设置为null
示例:1对多的关系