MySQL Connector/Python Developer Guide
Connector/Python includes a mysql.connector.django
module
that provides a Django back end for MySQL. This back end supports
new features found as of MySQL 5.6 such as fractional seconds
support for temporal data types.
Django uses a configuration file named
settings.py
that contains a variable called
DATABASES
(see
https://docs.djangoproject.com/en/1.5/ref/settings/#std:setting-DATABASES).
To configure Django to use Connector/Python as the MySQL back end, the
example found in the Django manual can be used as a basis:
DATABASES = {
'default': {
'NAME': 'user_data',
'ENGINE': 'mysql.connector.django',
'USER': 'mysql_user',
'PASSWORD': 'password
',
'OPTIONS': {
'autocommit': True,
},
}
}
It is possible to add more connection arguments using
OPTIONS
.
Django can launch the MySQL client application
mysql. When the Connector/Python back end does this, it
arranges for the sql_mode
system
variable to be set to TRADITIONAL
at startup.
Some MySQL features are enabled depending on the server version.
For example, support for fractional seconds precision is enabled
when connecting to a server from MySQL 5.6.4 or higher. Django's
DateTimeField
is stored in a MySQL column
defined as DATETIME(6)
, and
TimeField
is stored as
TIME(6)
. For more information about fractional
seconds support, see Fractional Seconds in Time Values.