级联更新, 就是好比学生表中的的张三选了一门叫做高数的课程,在选课表中就有张三和高数共同组成的一条选课记录,如果级联更新,当学生表中的张三改名为张四,他的选课表中的张三也会自动改为张四
级联删除,例如员工表中一项数据是部门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'))