Django 連線到 MySQL 資料庫


  1. 安裝MySQL
  2. 下指令 => pip install mysqlclient
  3. 打開 settings.py => 找到DATABASES => 修改 =>
    DATABASES = {
       'default': {
         'ENGINE': 'django.db.backends.mysql',
         'NAME': 'your_database_name',
         'USER': 'root',
         'PASSWORD': 'your_password',
         'HOST': 'localhost',
         'PORT': '3306(your_port)',
         }
    }
  4. 打開 models.py => 修改
    from django.db import models

    # Create your models here.

    class student(models.Model):
    cName = models.CharField(max_length=20, null=False)
    cSex = models.CharField(max_length=2, default='M', null=False)
    cBirthday = models.DateField(null=False)
    cEmail = models.EmailField(max_length=100, blank=True, default='')
    cPhone = models.CharField(max_length=50, blank=True, default='')
    cAddr = models.CharField(max_length=255, blank=True, default='')


    def __str__(self):
    return self.cName

  5. 下指令 => python manage.py makemigrations

    這個指令會根據你對 Model 的修改刪除建立一個新的 migration 檔案,讓 migrate 指令執行時,可以照著這份紀錄更新資料庫。

    接著用以下的指令,讓 Django 根據上面的紀錄,把 models.py 中的欄位寫入資料庫:

    下指令 => python manage.py migrate

    migrate 指令會根據 INSTALLED_APPS 的設定,按照 app 順序建立或更新資料表,將你在 models.py 裡的更新跟資料庫同步。

    只要有更改到model.py檔後必須做這兩個指令