当用户开发的Django应用程序需要使用不同种类的数据库(例如PostgreSQL、SQLite、MySQL、MariaDB或Oracle等)时,Django框架提供了很好的支持,这一点是非常有用的。
Django应用程序的数据库配置是在settings.py文件中的DATABASES字段中定义的。Django应用程序默认配置的是SQLite数据库,代码如下:
【代码2-6】
【代码分析】
在第03行代码中,'ENGINE'字段配置的就是SQLite数据库驱动('django.db.backends.sqlite3')。
在第04行代码中,'NAME'字段定义的是数据库配置文件。
在Django官方文档中,对于上述几个比较常见的关系数据库,已经给出了具体的'ENGINE'字段配置写法,具体代码如下:
【代码2-7】
django.db.backends.postgresql # PostgreSQL django.db.backends.mysql # MySQL django.db.backends.sqlite3 # SQLite django.db.backends.oracle # Oracle
读者可以根据自己使用的数据库参照上述代码中进行配置。
下面,我们就以常用的MySQL数据库为例,给出一个详细的配置写法,代码如下:
【代码2-8】
【代码分析】
在第03行代码中,'ENGINE'字段定义的是MySQL数据库驱动。
在第04行代码中,'NAME'字段定义的是MySQL数据库名;另外,如果是SQLite数据库,就需要填写数据库文件的绝对位置。
在第05行代码中,'USER'字段定义的是数据库登录的用户名,MySQL数据库一般都是“root”。
在第06行代码中,'PASSWORD'字段定义的是登录数据库的密码,必须是'USER'用户所对应的密码。
在第07行代码中,'HOST'字段定义的是主机服务器地址,一般在开发阶段,服务器与客户端都在同一台主机上,所以默认都填“127.0.0.1”。
在第08行代码中,'PORT'字段定义的是数据库服务器端口,MySQL数据库的默认端口为3306。
另外,'HOST'和'PORT'字段都可以不填(使用默认的配置),但是如果需要更改默认配置,就要填入更改后的实际内容。
在上面的配置过程完成后,就可以安装Python连接MySQL数据库的驱动程序PyMySQL了,具体方法如下:
python –m pip install PyMySQL
安装好MySQL数据库的驱动程序后,就可以启动Django开发服务器。Django开发服务器启动正常后,可以进一步验证MySQL数据库功能是否正常,具体方法是在命令行中输入如下代码:
Python >>from django.db import connection >>cursor = connection.cursor()
如果命令行中没有报错信息,则表明Python连接MySQL数据库的驱动程序已经安装成功,用户可以放心使用Django数据库功能。