Django-1.11.5和mysql来连接并创建数据库和表

时间:2021-12-30 23:08:10

lz的运行环境是Mac+python -2.7.6+django-1.11.5+mysql-5.17.8。那么首先需要安装mysql-python-1.2.3.tar,这个包是用来连接mysql和python之间的工具,有了它,就可以实现python和mysql之间互联互通,实现对接。整个过程如下:

一、安装mysql-python-1.2.3.tar

首先是下载,然后通过tar -zxvf mysql-python-1.2.3.tar来实现解压。然后找到site.cfg文件,找到里面的

# The path to mysql_config.
# Only use this if mysql_config is not on your PATH, or you have some weird
# setup that requires it.
# mysql_config = /usr/local/bin/mysql_config
将上述mysql_config 修改成自己电脑中配置的mysql数据库的位置,我的mysql位于 /usr/local/mysql/bin/mysql_config,然后将其复制给mysql_config中即可。然后先运行python setup.py build来实现编译,接下来再安装,python setup.py install即可。可以在python中测试,mysql-python-1.2.3.tar是否安装成功,输入python,然后再输入import MySQLdb命令,如果不报错,那么意味着安装成功。

二、配置settings.py文件

这个文件是django的系统文件,里面有一个关于databases的配置内容,需要更改,即

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',   //改为mysql数据库
        'NAME': 'csvt',                                          //需要现在mysql中建立名为csvt的数据库
'USER': 'root',
'PASSWORD': '123456',
'HOST': '127.0.0.1',
'PORT': '3306',                                         //具体的连接数据库的端口号
    }
}

然后是配置models.py文件,配置如下:

from __future__ import unicode_literals


from django.db import models


# Create your models here.


class Employee(models.Model):
name = models.CharField(max_length=20)    //创建Employee的数据表,且定义了一个字段为name,其长度限定为20个字节


三、测试连接

由于django-1.9以后,不支持syncdb了,文章如下:http://blog.csdn.net/caodongfang126/article/details/52401976,所以同步数据库的内容,需要用到另一个命令,为migrate,但是同步到mysql数据库中,仍然需要一些其他指令,如下:

第一步 让Django知道要包含blog应用。 
python manage.py makemigrations blog 
通过运行makemigrations告诉Django,已经对模型做了一些更改(在这个例子中,你创建了一个新的模型)并且会将这些更改存储为迁移文件。Django使用迁移文件来保存对模型的更改(即数据库模式的更改)—— 所谓迁移文件其实就是磁盘上的普通文件。 如果愿意,你可以阅读迁移文件来了解新模型; 这个迁移文件就是 blog/migrations/0001_initial.py。不用担心,Django不要求你在每次Django生成迁移文件之后都要阅读这些文件,但是它们被设计成可人为编辑的形式,以便你可以手工稍微修改一下Django的某些具体行为。 
第二步 python manage.py sqlmigrate blog 0001  
第三步 python manage.py migrate

完成后,即可以在mysql数据库中,看到新创建的数据表,为blog_employee,里面有一个name字段,同时会自动创建一个id字段,并且它是自动递增的。


上述就是用django去连接mysql数据库并创建相应的表格的步骤,不是特别难,初学者可以根据上述方式来学一学,大家一起进步!