1. 程式人生 > >Django ORM和SQLAlchemy類比

Django ORM和SQLAlchemy類比

color code 自動提交 -o oss 比較 自動 關系 rec

ORM:對象關系映射,是通過代碼和數據庫實現交互的一種映射關系
技術分享圖片

Django ORM:使用活動記錄實現(active record)
                         數據庫中每一行(記錄)都映射代碼中的一個對象
                         框架可以查看數據庫模式(schema)
                         適合CURD操作
                         自動創建ID主鍵
                         默認自動提交

SQLAlchemy:使用數據映射器實現
                         數據庫結構和對象之間是分離的,
                         采用持久層保持與數據庫的交互
                       (保存操作對象)
                         代碼無需知道數據庫整個關系結構
                       (代碼層面與數據庫結構沒有直接關系)
                         適合業務規則比較多,較復雜場景(靈活可控),只讀查詢
                         不自動創建主鍵,需要根據自己業務需求手動指定
                         不會自動提交

Django ORM和SQLAlchemy類比