django優化--ORM優缺點

談Django繞不開ORM

ORM : ORM概念,ORM特色,ORM 的優勢,ORM 的缺點數據庫

orm : 對象關係映射 (Object Relational Mapping) ,用於實現面向對象編程語言裏不一樣類型系統的數據之間的轉換 [1] 。從效果上說,它實際上是建立了一個可在編程語言裏使用的–「虛擬對象數據庫」。
ORM方法論基於三個核心原則: 簡單:以最基本的形式建模數據。 傳達性:數據庫結構被任何人都能理解的語言文檔化。 精確性:基於數據模型建立正確標準化的結構
概念(百度百科)
對象-關係映射(Object Relational Mapping,簡稱ORM),是隨着面向對象的[軟件開發方法發展而產生的。用來把對象模型表示的對象映射到基於S Q L 的關係模型數據庫結構中去。這樣,咱們在具體的操做實體對象的時候,就不須要再去和複雜的 SQ L 語句打交道,只需簡單的操做實體對象的屬性和方法 。O R M 技術是在對象和關係之間提供了一條橋樑,前臺的對象型數據和數據庫中的關係型的數據經過這個橋樑來相互轉化 。
一、數據類型映射模式
二、類映射模型
三、關聯映射模式
四、引用映射模式編程

一:概念
簡單說,
ORM 就是經過實例對象的語法,完成關係型數據庫的操做的技術,是"對象-關係映射"(Object/Relational Mapping) 的縮寫。架構

ORM 把數據庫映射成對象。
• 數據庫的表(table) --> 類對象(class)
• 記錄(record,行數據)–> 對象(object)
• 字段(field)–> 對象的屬性(attribute)app

理解:例以下圖編程語言

 

 

 

二:ORM特色:
ORM 使用對象,封裝了數據庫操做,所以能夠不碰 SQL 語言。開發者只使用面向對象編程,與數據對象直接交互,不用關心底層數據庫。
能夠方便實現: 增長(Create)、讀取查詢(Read)、更新(Update)和刪除(Delete)工具

三:ORM 的優勢。
• 數據模型都在一個地方定義,更容易更新和維護,也利於重用代碼。
• ORM 有現成的工具,不少功能均可以自動完成,好比數據消毒、預處理、事務等等。
• 它迫使你使用 MVC 架構,ORM 就是自然的 Model,最終使代碼更清晰。
• 基於 ORM 的業務代碼比較簡單,代碼量少,語義性好,容易理解。
• 你沒必要編寫性能不佳的 SQL。性能

四:ORM 的缺點。
• ORM 庫不是輕量級工具,須要花不少精力學習和設置。
• 對於複雜的查詢,ORM 要麼是沒法表達,要麼是性能不如原生的 SQL。
• ORM 抽象掉了數據庫層,開發者沒法瞭解底層的數據庫操做,也沒法定製一些特殊的 SQL。學習

原文:https://blog.csdn.net/aixiangnan/article/details/90300531 .net

相關文章
相關標籤/搜索