級聯更新, 就是好比學生表中的的張三選了一門叫做高數的課程,在選課表中就有張三和高數共同組成的一條選課記錄,如果級聯更新,當學生表中的張三改名為張四,他的選課表中的張三也會自動改為張四
級聯刪除,例如員工表中一項數據是部門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'))