• 正文
  • 推荐器件
  • 相关推荐
申请入驻 产业图谱

Django操作mysql数据库(一)

2024/07/01
620
加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论

Django连接数据库

Django的setting文件中,找到数据库连接,修改成mysql:

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME': 'djangostudy',
        'USER': 'root',
        'PASSWORD': 'yeqinfang',
        'HOST': '192.168.31.101',
        'PORT': '3306',
    }
}

执行迁移

python manage.py makemigrations
python manage.py  migrate

在这里插入图片描述

pycharm直接报错,说明我们没有安装mysql的操作模块,安装如下:

在这里插入图片描述

然后引入mysql模块:

在这里插入图片描述

再次运行,报错:

在这里插入图片描述

他要求客户端版本较高,查看官方文档:https://pypi.org/project/mysqlclient/

并按照文档操作:

pip install mysqlclient

在这里插入图片描述发现还是一样报错,需要更换客户端,并再次执行:
在这里插入图片描述在这里插入图片描述

如上,执行成功。原因是django3.0不支持pymysql,而MySQLDB又不支持python3,所以官方推荐安装mysqlclient(MySQLdb分支)来引用MySQLdb,而不是直接安装MySQLdb,使用方法应该跟MySQLdb一样。

在这里插入图片描述

pycharm连接数据库

在这里插入图片描述在这里插入图片描述在这里插入图片描述

安装驱动文件之后(下方的感叹号,点击一下download),报如下错误:

Server returns invalid timezone. Need to set ‘serverTimezone’ property.

很显然,它提示时区不对,那我就去设置一下服务器时区。

(1)查看时区指令:

show variables like'%time_zone'; 

如图,system就是没设置时区。

在这里插入图片描述

(2)设置时区

set global time_zone = '+8:00'; 

(3)重新连接

在这里插入图片描述

操作数据库

创建应用:

在这里插入图片描述

那么,我们现在开始码代码吧!

(1)创建一张表

class loginUser(models.Model):
	loginname = models.CharField(max_length=20, null=False, unique=True)
    nickname = models.CharField(max_length=20, null=False, unique=False)
    sex = models.BooleanField(default=True)

(2)执行迁移

python manage.py makemigrations
python manage.py  migrate

在这里插入图片描述

直接报错,原因是应用没有注册。

(3)注册应用

在这里插入图片描述

(4)再次执行迁移

在这里插入图片描述

再次执行成功了,但是没有表生成。为了查明什么原因,我决定去数据库查看:

在这里插入图片描述

有表生成!说明迁移成功,数据库生成了表,只是没显示在pycharm里。这是为什么呢?

(5)真相了!

pycharm连接数据库后不能查看表,此时,需要手动选择数据库

在这里插入图片描述

效果展示:

在这里插入图片描述

推荐器件

更多器件
器件型号 数量 器件厂商 器件描述 数据手册 ECAD模型 风险等级 参考价格 更多信息
SY89113UMY 1 Microchip Technology Inc 89113 SERIES, LOW SKEW CLOCK DRIVER, 12 TRUE OUTPUT(S), 0 INVERTED OUTPUT(S), QCC44
$8.97 查看
CY62157EV30LL-45ZSXI 1 Cypress Semiconductor Standard SRAM, 512KX16, 45ns, CMOS, PDSO44, TSOP2-44

ECAD模型

下载ECAD模型
$10.12 查看
LTC6993IDCB-3#TRMPBF 1 Analog Devices Inc LTC6993IDCB-3#TRMPBF
$2.16 查看
点赞
收藏
评论
分享
加入交流群
举报

相关推荐

登录即可解锁
  • 海量技术文章
  • 设计资源下载
  • 产业链客户资源
  • 写文章/发需求
立即登录