MySQL Connector/Python 版本說明
Connector/Python 包含一個 mysql.connector.django
模組,為 MySQL 提供 Django 後端。這個後端支援 MySQL 5.6 起新增的功能,例如時間資料類型的小數秒支援。
Django 設定
Django 使用名為 settings.py
的設定檔,其中包含一個名為 DATABASES
的變數(請參閱 https://django-docs.dev.org.tw/en/1.5/ref/settings/#std:setting-DATABASES)。若要將 Django 設定為使用 Connector/Python 作為 MySQL 後端,可以將 Django 手冊中的範例作為基礎
DATABASES = {
'default': {
'NAME': 'user_data',
'ENGINE': 'mysql.connector.django',
'HOST': '127.0.0.1',
'PORT': 3306,
'USER': 'mysql_user',
'PASSWORD': 'password',
'OPTIONS': {
'autocommit': True,
'use_oure': True,
'init_command': "SET foo='bar';"
},
}
}
可以使用 OPTIONS
新增更多連線引數。
MySQL 功能支援
Django 可以啟動 MySQL 用戶端應用程式 mysql。當 Connector/Python 後端執行此操作時,它會安排在啟動時將 sql_mode
系統變數設定為 TRADITIONAL
。
某些 MySQL 功能會根據伺服器版本啟用。例如,當連線到 MySQL 5.6.4 或更高版本的伺服器時,會啟用小數秒精度的支援。Django 的 DateTimeField
儲存在定義為 DATETIME(6)
的 MySQL 資料行中,而 TimeField
則儲存為 TIME(6)
。如需小數秒支援的詳細資訊,請參閱 時間值中的小數秒。
支援使用自訂類別進行資料類型轉換,作為 mysql.connector.django.base.DjangoMySQLConverter 的子類別。此支援是在 Connector/Python 8.0.29 中新增的。