要使用关联AR,推荐在需要被关联的数据表中声明主键-外键约束,约束帮助保持相关数据的一致性和完整性
AR类之间的关联直接代表着这个类所对应数据表之间的关系
在AR中声明关联,是通过CActiveRecord的relations方法实现的
1、声明关联
2、执行关联查询
进行关联查询最简单的一个方式就是访问一个AR实例的关联属性,如果这个关联属性没有被访问过,一个关联查询被初始化,
通过当前AR对象的主键连接相关的表,来获取关联对象的值,然后将数据保存在对应的属性中,这种方式称为延迟加载,也只有等到访问某个属性时,才会真正到数据库中
把这些关联的数据取出来
若关联一个没有关联的实例,则返回null或空数组
执行关联查询
也可以通过CDbcriteria::with属性来执行
或者是
关联查询选项
之前我们提到的额外参数可以被指定在关联声明中,这些选项被称为name-value对,被用来定制关联查询
本文深入探讨了在AR环境中如何通过主键-外键约束实现数据表间关联,阐述了AR类关联的实现方式及执行关联查询的两种方法:访问AR实例关联属性与CDbcriteria::with属性。解释了延迟加载机制及其作用,以及如何通过额外参数自定义关联查询选项。

2万+

被折叠的 条评论
为什么被折叠?



