级联删除和级联更新的理解?


级联更新,  就是好比学生表中的的张三选了一门叫做高数的课程,在选课表中就有张三和高数共同组成的一条选课记录,如果级联更新,当学生表中的张三改名为张四,他的选课表中的张三也会自动改为张四

级联删除,例如员工表中一项数据是部门ID,部门ID是部门表的主键,如果是级联删除,当删除了部门A的时候,会把所有属于部门A的员工都给删除。

 

A==>B(A关联B表),B变A受影响,A变B不受影响.

 基于对象的查询,是子查询(效率很低)

    #一对一正向:
    # author_obj = models.Author.objects.get(name='武松')
    # print(author_obj.address) #景阳冈
    
   #一对一反向 # # print(author_obj.author.__dict__) # print(author_obj.author) # author_detail_obj
= models.AuthorDetail.objects.get(address='景阳冈') # print(author_detail_obj.author.name) #武松 # 一对多的正向查询 # book_obj = models.Book.objects.get(title='冬瓜正传') # print(book_obj.publisher.name) #18期出版社 # 一对多反向查询 # pub_obj = models.Publish.objects.get(name='18期出版社') # print(pub_obj.book_set.all().values('title')) # print(pub_obj.book_set) #app01.Book.None #多对多正向查询 # book_obj = models.Book.objects.get(title='冬瓜正传') # print(book_obj.authors.all().values('name')) # author_obj = models.Author.objects.get(name='武松') # print(author_obj.book_set.all().values('title'))

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM