django连接mysql数据库

存在问题:

django如何连接mysql数据库


解决方案:

  1. 创建工程和项目APP;
  2. 修改Django的settings.py文件(根据自己的数据库配置信息修改);
    并在setting.py文件中添加app
sql 复制代码
DATABASES = {
    'default': {
        # 'ENGINE': 'django.db.backends.sqlite3',
        # 'NAME': BASE_DIR / 'db.sqlite3',
        'ENGINE':'django.db.backends.mysql',
        'NAME':'tushu',   #数据库名
        'USER':'root',    #用户名
        'PASSWORD':'root',    #密码
        'HOST':'127.0.0.1',
        'PORT':'3306' 


  1. 修改__init__.py文件,配置Mysql,替换默认的数据库引擎,添加以下内容
sql 复制代码
import pymysql
pymysql.install_as_MySQLdb()
  1. models.py文件中加入数据表创建语句
python 复制代码
from django.db import models

# Create your models here.

class list(models.Model):
    value_a=models.CharField(max_length=50)
    value_b = models.CharField(max_length=50)
  1. 迁移数据到MySql
python 复制代码
python manage.py makemigrations
python manage.py migrate

此时发现mysql中多出一个newweb_list的新表(名称默认是APP应用名+models.py中的类名)

此时可以给空数据库填写一些数据,方便后续查询交互验证;

  1. 编写url.py、视图views.py和Template中list.html三个文件后,启动django web服务,完成数据交互查询结果展示


数据库MySql查询结果:

特别注意:

此文描述的为通过models中建表后迁移到数据库中情况;

若mysql数据库中原本已经存在数据表,需要进行连接直接使用的话,可通过以下命令将数据库表自动生成到models.py文件中

python 复制代码
python manage.py inspectdb > models.py

此时,会发现除了应用SPP newWeb文件中的models.py外,多了一个models2.py的文件,这个就是新生成的(包含数据库中原本所有表)。

相关推荐
李白客1 天前
KES新版MySQL兼容能力再升级意味着什么?
mysql·国产数据库
ClouGence1 天前
Oracle 数据同步为什么会出现数据不一致?长事务是常被忽略的原因
数据库·后端·oracle
飞将1 天前
从零实现数据库(2)——HashIndex + IndexManager
数据库
呱呱复呱呱2 天前
Django CBV 源码解读:一个请求是怎么找到你的 get() 方法的
python·django
Nturmoils2 天前
订单列表慢查询,先看 WHERE、ORDER BY 和 LIMIT
数据库
渣波2 天前
拒绝 SQL 焦虑!手把手带你用 NestJS + Prisma + DTO 写出“防弹”级后端代码
javascript·数据库·后端
Jim6003 天前
【吃透 MySQL InnoDB连载】第 1 章・解密线上数据库高频故障
mysql
GreatSQL3 天前
gt-checksum v4.0.0 新功能解读系列文章(4):SSL 加密连接——数据校验传输安全再升级
mysql
倔强的石头_3 天前
KingbaseES 新版MySQL 兼容版体验:旧版迁移 + 功能实测
数据库