1.Django連接數據庫
1.1) 常見的數據庫操作
常見的數據庫
關系型數據庫:sqlite/mysql/sql server/oracle/db2
非關系型數據[NoSQL:not only sql]:mongdb\redis\memcache…
使用最多還是關系型數據庫
數據庫的搭建
開發環境:主要是方便開發使用安裝的數據庫
可以是小型數據庫、可以不穩定、可以丟失數據…
目的:測試程序功能
生產環境:主要是為了給程序提供完整的數據存儲安裝的數據庫
針對性的數據庫
通常情況下,數據庫會單獨部署一個服務器[數據庫服務器]
開發環境的數據庫搭建(mysql):
快速、方便、可用
官方網站下載數據庫安裝包——完整安裝數據庫[常用]
安裝第三方的集成工具,項目需要的各種功能都具備了wamp/xampp
wamp:w web | a apache | m mysql | p php
xampp: a apache | m mysql | p php | p perl
2.Django連接數據庫
連接數據庫是一種項目操作,這樣的操作方式,一般通過配置的方式直接實現即可!通過修改settings.py配置文件來連接指定的數據庫
2.pymysql完成的數據庫連接
- 要使用pymysql完成數據庫連接,要通過指定使用mysqldb的方式進行操作
- 通過配置DATABASES來完成和數據庫之間的連接
# 引入需要的模塊
import pymysql
# 轉換數據庫支持
pymysql.install_as_MySQLdb()
DATABASES = {
'default': { 'ENGINE': 'django.db.backends.mysql',
'NAME': 'py_db',
'USER': 'root',
'PASSWORD': '', # 配置為空表示無密碼
'HOST': '', # 配置為空表示連接的是當前 PC
'PORT': '3306' }
}
例如:
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': "tiantian",
"USER":"root",
"PASSWORD":"root",
}
}
如此~Django 和數據庫之間的連接關系就建立了
3.定義創建模型
1.定義一個用戶類型
class UserInfo(models.Model):
為了保障讓我們定義的類型,交給Django進行自動管理,需要繼承django.db.models.Model類型
為了讓Django能管理我們定義的類型創建的對象,所有的屬性,通過Django內置的方法進行創建
from django.db import models
# Create your models here.
#用戶模型類
class UserInfo(models.Model):
uname=models.CharField(max_length=50)
upwd=models.CharField(max_length=40)
uemail=models.CharField(max_length=30)
ushou=models.CharField(max_length=20,default="")
uadder=models.CharField(max_length=100,default="")
ubian=models.CharField(max_length=10,default="")
uphone=models.CharField(max_length=11,default="")
image.png
image.png
4.數據庫的同步操作
根據定義的類型,自動生成sql語句
python manage.py makemigrations
查看生成的sql語句
python manage.py sqlmigrate <name> <no>
執行sql語句,同步數據庫
python manage.py migrate