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

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

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

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

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

    #一对一正向:
    # author_obj = models.Author.objects.get(name='武松')
    # print(author_obj.author) #景阳冈
    
   #一对一反向 # # 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'))

猜你喜欢

转载自www.cnblogs.com/studybrother/p/10455212.html