加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

SQLAlchemy中的自引用

发布时间:2020-12-12 00:03:16 所属栏目:MySql教程 来源:网络整理
导读:SQLALCHEMY采用adjacency list pattern来表示类的自引用。 例如,对于类Node自引用: = =Column(Integer,primary_key= =Column(Integer,ForeignKey( =Column(String(50 =relationship( ) 对于如下图所示的结构: root--------------->child1 -------->child2

SQLALCHEMY采用adjacency list pattern来表示类的自引用。

例如,对于类Node自引用:

==Column(Integer,primary_key==Column(Integer,ForeignKey(=Column(String(50=relationship()

对于如下图所示的结构:

root--------------->child1

-------->child2---------->subchild1

---------->subchild2

-------->child3

可能有如下数据:

id parent_id data

1 NULL root

2 1 child1

3 1 child2

4 3 subchild1

5 3 subchild2

6 1 child3

无论自引用是一对多还是多对一,通常默认是一对多。如果想建立多对一的关系,需要在relationship()中添加remote_side属性,remote_side属性包含一列或多列。如:

==Column(Integer,ForeignKey(=Column(String(50=relationship(,remote_side=[id])

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读