django中內嵌了orm框架,不需要直接面向資料庫程式設計,而是定義模型類,通過模型類和物件完成資料表的增刪改查操作。
使用django進行資料庫開發的步驟如下:
配置資料庫連線資訊
在models.py中定義模型類
遷移通過類和物件完成資料增刪改查操作
orm作用
在settings.py中儲存了資料庫的連線配置資訊,django預設初始配置使用sqlite資料庫。
使用mysql資料庫首先需要安裝驅動程式
pip install pymysql在django的工程同名子目錄的__init__.py檔案中新增如下語句
from pymysql import install_as_mysqldb作用是讓django的orm能以mysqldb的方式來呼叫pymysql。install_as_mysqldb()
修改databases配置資訊
databases =
}
在mysql中建立資料庫
create database django_demo default charset=utf8;可通過db_table 指明資料庫表名。
2) 關於主鍵
django會為表建立自動增長的主鍵列,每個模型只能有乙個主鍵列,如果使用選項設定某屬性為主鍵列後django不會再建立自動增長的主鍵列。
預設建立的主鍵列屬性為id,可以使用pk代替,pk全拼為primary key。
3) 屬性命名限制
不能是python的保留關鍵字。
不允許使用連續的下劃線,這是由django的查詢方式決定的。
定義屬性時需要指定字段型別,通過字段型別的引數指定選項,語法如下:
屬性=models.欄位型別(選項)4)字段型別
5) 選項
null是資料庫範疇的概念,blank是表單驗證範疇的
6) 外來鍵
在設定外來鍵時,需要通過on_delete選項指明主表刪除資料時,對於外來鍵引用表資料如何處理,在django.db.models中包含了可選常量:
2 遷移
將模型類同步到資料庫中。
1)生成遷移檔案
python manage.py makemigrations2)同步到資料庫中
python manage.py migrate
ORM框架,自建資料庫工具類DBUtils
建立配置檔案 例如 jdbc connection settings driver com.mysql.jdbc.driver url jdbc mysql user root password 123456 connection pool settings pool.maxactive 10 po...
定義ORM模型,並將ORM模型對映到資料庫中
下面就講講如何將orm模型對映到資料庫中。from sqlalchemy import create engine,column,integer,string from sqlalchemy.ext.declarative import declarative base dialct mysql d...
flask框架3(資料庫ORM)
flask sqlalchemy 配置 其他配置 使用class user db.model tablename user id db.column db.integer,primary key true,autoincrement true name db.column db.string 50 ...