這篇文章給大家分享的是有關(guān)django中orm的優(yōu)點(diǎn)是什么的內(nèi)容。小編覺(jué)得挺實(shí)用的,因此分享給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧。

創(chuàng)新互聯(lián)是一家專(zhuān)注于成都網(wǎng)站設(shè)計(jì)、網(wǎng)站制作與策劃設(shè)計(jì),云溪網(wǎng)站建設(shè)哪家好?創(chuàng)新互聯(lián)做網(wǎng)站,專(zhuān)注于網(wǎng)站建設(shè)十余年,網(wǎng)設(shè)計(jì)領(lǐng)域的專(zhuān)業(yè)建站公司;建站業(yè)務(wù)涵蓋:云溪等地區(qū)。云溪做網(wǎng)站價(jià)格咨詢(xún):18980820575
ORM : ORM概念,ORM特點(diǎn),ORM 的優(yōu)點(diǎn),ORM 的缺點(diǎn)
orm : 對(duì)象關(guān)系映射 (Object Relational Mapping) ,用于實(shí)現(xiàn)面向?qū)ο缶幊陶Z(yǔ)言里不同類(lèi)型系統(tǒng)的數(shù)據(jù)之間的轉(zhuǎn)換 [1] 。從效果上說(shuō),它其實(shí)是創(chuàng)建了一個(gè)可在編程語(yǔ)言里使用的–“虛擬對(duì)象數(shù)據(jù)庫(kù)”。
ORM方法論基于三個(gè)核心原則: 簡(jiǎn)單:以最基本的形式建模數(shù)據(jù)。 傳達(dá)性:數(shù)據(jù)庫(kù)結(jié)構(gòu)被任何人都能理解的語(yǔ)言文檔化。 精確性:基于數(shù)據(jù)模型創(chuàng)建正確標(biāo)準(zhǔn)化的結(jié)構(gòu)
一、概念
對(duì)象-關(guān)系映射(Object Relational Mapping,簡(jiǎn)稱(chēng)ORM),是隨著面向?qū)ο蟮腫軟件開(kāi)發(fā)方法發(fā)展而產(chǎn)生的。用來(lái)把對(duì)象模型表示的對(duì)象映射到基于S Q L 的關(guān)系模型數(shù)據(jù)庫(kù)結(jié)構(gòu)中去。這樣,我們?cè)诰唧w的操作實(shí)體對(duì)象的時(shí)候,就不需要再去和復(fù)雜的 SQ L 語(yǔ)句打交道,只需簡(jiǎn)單的操作實(shí)體對(duì)象的屬性和方法 。O R M 技術(shù)是在對(duì)象和關(guān)系之間提供了一條橋梁,前臺(tái)的對(duì)象型數(shù)據(jù)和數(shù)據(jù)庫(kù)中的關(guān)系型的數(shù)據(jù)通過(guò)這個(gè)橋梁來(lái)相互轉(zhuǎn)化 。
1、數(shù)據(jù)類(lèi)型映射模式
2、類(lèi)映射模型
3、關(guān)聯(lián)映射模式
4、引用映射模式
簡(jiǎn)單說(shuō),
ORM 就是通過(guò)實(shí)例對(duì)象的語(yǔ)法,完成關(guān)系型數(shù)據(jù)庫(kù)的操作的技術(shù),是"對(duì)象-關(guān)系映射"(Object/Relational Mapping) 的縮寫(xiě)。
ORM 把數(shù)據(jù)庫(kù)映射成對(duì)象。
數(shù)據(jù)庫(kù)的表(table) --> 類(lèi)對(duì)象(class)
記錄(record,行數(shù)據(jù))–> 對(duì)象(object)
字段(field)–> 對(duì)象的屬性(attribute)
二:ORM特點(diǎn):
ORM 使用對(duì)象,封裝了數(shù)據(jù)庫(kù)操作,因此可以不碰 SQL 語(yǔ)言。開(kāi)發(fā)者只使用面向?qū)ο缶幊蹋c數(shù)據(jù)對(duì)象直接交互,不用關(guān)心底層數(shù)據(jù)庫(kù)。
可以方便實(shí)現(xiàn): 增加(Create)、讀取查詢(xún)(Read)、更新(Update)和刪除(Delete)
三:ORM 的優(yōu)點(diǎn)。
數(shù)據(jù)模型都在一個(gè)地方定義,更容易更新和維護(hù),也利于重用代碼。
ORM 有現(xiàn)成的工具,很多功能都可以自動(dòng)完成,比如數(shù)據(jù)消毒、預(yù)處理、事務(wù)等等。
它迫使你使用 MVC 架構(gòu),ORM 就是天然的 Model,最終使代碼更清晰。
基于 ORM 的業(yè)務(wù)代碼比較簡(jiǎn)單,代碼量少,語(yǔ)義性好,容易理解。
你不必編寫(xiě)性能不佳的 SQL。
四:ORM 的缺點(diǎn)。
ORM 庫(kù)不是輕量級(jí)工具,需要花很多精力學(xué)習(xí)和設(shè)置。
對(duì)于復(fù)雜的查詢(xún),ORM 要么是無(wú)法表達(dá),要么是性能不如原生的 SQL。
ORM 抽象掉了數(shù)據(jù)庫(kù)層,開(kāi)發(fā)者無(wú)法了解底層的數(shù)據(jù)庫(kù)操作,也無(wú)法定制一些特殊的 SQL。
感謝各位的閱讀!關(guān)于django中orm的優(yōu)點(diǎn)是什么就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,讓大家可以學(xué)到更多知識(shí)。如果覺(jué)得文章不錯(cuò),可以把它分享出去讓更多的人看到吧!
網(wǎng)站題目:django中orm的優(yōu)點(diǎn)是什么
網(wǎng)頁(yè)URL:http://chinadenli.net/article16/gsjgdg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站制作、Google、軟件開(kāi)發(fā)、做網(wǎng)站、外貿(mào)建站、App開(kāi)發(fā)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)