django--mysql数据库配置

python==3.7.0

django==2.0

pymysql==0.9.3

一、配置数据库
Django默认数据库为sqlite
若该项目要使用mysql数据库,需要更改配置

1、项目下setting.py中添加如下代码

import pymysql

pymysql.install_as_MySQLdb()

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME': 'xxx',           # 数据库库名(需提前创建好数据库)
        'USER': 'xxx',            # 用户名
        'PASSWORD':'***',     # 连接密码
        'HOST':'xx.xx.xx.xx',   # 主机
        'PORT':'3306',             # mysql端口
    }
}

# 将初始DATABASES注释或删除

2、进行数据迁移

进入项目地址(与manage.py同级),执行如下命令

python manage.py makemigrations # 创建 迁移
python manage.py migrate  # 执行 迁移

3、执行完毕后,可在mysql指定的数据库中看到已经完成迁移的数据表,至此,mysql数据库配置完成

二、数据表的创建、删除、修改(业务层面)

1、数据表的创建

# 在应用下创建数据表首先需要创建应用,并且注册应用,才可以创表
# 在目标应用下的model.py中写入所需创建的类,如在Usermanagement应用下编写如下代码

from django.db import models

# Create your models here.

class User(models.Model):
    id=models.CharField(max_length=50,primary_key=True)
    user_id=models.CharField(max_length=50)
    user_name=models.CharField(max_length=50)
    password=models.CharField(max_length=255)
    user_mail=models.CharField(max_length=50)
    user_status=models.IntegerField()

进入项目地址(与manage.py同级),执行如下命令

python manage.py makemigrations # 创建 迁移
# 此时会在应用下的migrations文件夹中生成
0001_initial.py文件

python manage.py migrate # 执行 迁移
# 此时会在数据库中创建名为
Usermanagement_User的数据表
 
 
 

至此,数据表的创建结束

2、数据表的删除

分两步:①手动进入数据库,删除目标数据表;②在django_migrations表中删除该表的注册信息

至此,该数据表删除成功

3、数据表的修改

# 还是在model.py中修改已经创建好的类
# 添加或者删除或者修改字段
# 完成后执行如下命令

python manage.py makemigrations
# 删除、修改字段会直接提示结果



# 添加字段会提示是否加入默认值

此时可以选择1,并且键入默认值''即可

或者在model.py中新增的字段代码中加入默认值,再执行python manage.py makemigrations,代码如下

from django.db import models

# Create your models here.

class User(models.Model):
id=models.CharField(max_length=50,primary_key=True)
user_id=models.CharField(max_length=50)
user_name=models.CharField(max_length=50)
password=models.CharField(max_length=50)
user_status=models.IntegerField()
xx=models.CharField(max_length=255,default='') # 加入default=''

python manage.py migrate  # 执行 迁移
# 此时会更新数据库中的表

 至此,数据表中字段修改成功

数据表的每次修改都会记录在migrations文件夹下,同时也会存储在django_migrations表里

猜你喜欢

转载自www.cnblogs.com/cooper-wang/p/11353578.html
今日推荐