<1> sqlitepython
django默認使用sqlite的數據庫,默認自帶sqlite的數據庫驅動 , 引擎名稱:django.db.backends.sqlite3mysql
<2> mysqlsql
引擎名稱:django.db.backends.mysql數據庫
若是咱們想要更改數據庫,須要修改以下:django
DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', 'NAME': 'books', #你的數據庫名稱session
'USER': 'root', #你的數據庫用戶名 'PASSWORD': '', #你的數據庫密碼 'HOST': '', #你的數據庫主機,留空默認爲localhost 'PORT': '3306', #你的數據庫端口
}oracle
}app
NAME即數據庫的名字,在mysql鏈接前該數據庫必須已經建立,而上面的sqlite數據庫下的db.sqlite3則是項目自動建立
USER和PASSWORD分別是數據庫的用戶名和密碼。
設置完後,再啓動咱們的Django項目前,咱們須要激活咱們的mysql。
而後,啓動項目,會報錯:no module named MySQLdb
這是由於django默認你導入的驅動是MySQLdb,但是MySQLdb對於py3有很大問題,因此咱們須要的驅動是PyMySQL
因此,咱們只須要找到項目名文件下的__init__,在裏面寫入: import pymysql
pymysql.install_as_MySQLdb()
問題解決!
建立數據庫
先用MySQL 建立一個數據庫
而後在model.py裏面寫數據表
class Book(models.Model): # id =
name = models.CharField(max\_length=20) price \= models.FloatField() pub\_date \= models.DateField() class Author(models.Model): name \= models.CharField(max\_length=32)
在terminal運行python manage.py makemigrations
D:\pycharm\python_s3\Django_ORM>python manage.py makemigrations
Migrations for 'app01':
app01\migrations\0002_author.py - Create model Author
在terminal運行python manage.py migrate
D:\pycharm\python_s3\Django_ORM>python manage.py migrate
Operations to perform:
Apply all migrations: admin, app01, auth, contenttypes, sessions
Running migrations:
Applying app01.0003_book_author... OK
表就建好了