您好,登錄后才能下訂單哦!
小編給大家分享一下django框架實現對象關系映射的方法,希望大家閱讀完這篇文章后大所收獲,下面讓我們一起去探討吧!
Django的ORM來源:django中內嵌了ORM框架,不需要直接面向數據庫編程,而是定義模型類,通過模型類和對象完成數據表的增刪改查操作。
Django連接數據庫MySQL:使用MySQL數據庫首先需要安裝驅動程序。(pip install PyMySQL 調用時為 import pymysql)
Django默認導入的mysql的驅動程序是MySQLdb,然而MySQLdb對于py3支持不全,所以這里使用PyMySQL。 用于Python鏈接Mysql數據庫的接口。需要在__init__文件指定
from pymysql import install_as_MySQLdb install_as_MySQLdb() 。作用是讓Django的ORM能以mysqldb的方式來調用PyMySQL。
ORM介紹:對象關系映射。在項目與數據庫之間起橋梁作用。
在ORM框架中,它幫我們把類和數據表進行了一個映射,可以讓我們通過類和類對象就能操作它所對應的表格中的數據。例如:模型類BookInfo --映射到–> 數據表bookinfo。使數據庫設計更加簡單.
ORM框架還有一個功能,它可以根據我們設計的類自動幫我們生成數據庫中的表格,省去了我們自己建表的過程。
核心思想: 用面向對象的方式去操作數據庫的創建表、增加、修改、刪除、查詢等操作。把面向對象中的類和數據庫表一一對應,通過操作類和對象,對數據表實現數據操作,不需要寫sql,由orm框架生成。
Django的ORM操作原理:Django的orm操作本質上會根據對接的數據庫引擎,翻譯成對應的sql語句;所有使用Django開發的項目無需關心程序底層使用的是MySQL、Oracle、sqlite…,如果數據庫遷移,只需要更換Django的數據庫引擎即可
Django的ORM優點缺點:
1)只需要面向對象編程, 不需要面向數據庫編寫代碼.
對數據庫的操作都轉化成對類屬性和方法的操作.不用編寫各種數據庫的sql語句.
2)實現了數據模型與數據庫的解耦, 屏蔽了不同數據庫操作上的差異.不在關注用的是mysql,oracle…等.通過簡單的配置就可以輕松更換數據庫, 而不需要修改代碼.
3)在映射過程中有性能缺失,面向對象編程到sql語句之間的映射需要過程時間,造成性能缺失
配置步驟:
在settings.py中配置了數據庫的連接配置信息
指定調用MySQL的驅動程序PyMySQL
在MySQL中創建數據庫
創建模型:
遷移
1)生成遷移文件 python manage.py makemigrations
2)同步到數據庫中 python manage.py migrate
看完了這篇文章,相信你對django框架實現對象關系映射的方法有了一定的了解,想了解更多相關知識,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。