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的文件,这个就是新生成的(包含数据库中原本所有表)。

相关推荐
Mike117.7 分钟前
GBase 8a 日期边界写法和时间窗口取数偏差
数据库
SPC的存折2 小时前
1、Redis数据库基础
linux·运维·服务器·数据库·redis·缓存
MatrixOrigin5 小时前
数据库没有死,只是范式变了
数据库·oracle
羊小蜜.7 小时前
Mysql 13: 触发器全解——创建、查看、使用与注意事项
数据库·mysql·触发器
阿里加多7 小时前
第 1 章:Go 并发编程概述
java·开发语言·数据库·spring·golang
ShiJiuD6668889997 小时前
Mysql 进阶
数据库·mysql
一 乐7 小时前
物流信息管理|基于springboot + vue物流信息管理系统(源码+数据库+文档)
java·数据库·vue.js·spring boot·论文·毕设·物流信息管理系统
l1o3v1e4ding7 小时前
排查linux CentOS7.6的mysql磁盘 I/O 延迟过高问题
linux·运维·mysql