Django migrate时出现OperationalError: (1366, "Incorrect string value")

数据库:MYSQL

IDE:pyCharm

Django版本:3.0.3

migrate时出现

解决办法:

报错的原因是MYSQL 默认创建的数据库和表编码类型,字符集是Latin1,需要修改字符集与排序规则才能传递数据。

1、下载比命令行更好用的客户端软件。

由于MYSQL不带数据库管理GUI,我下载了Navicat Premium 15

地址:https://www.navicat.com.cn/download/navicat-premium

2、链接本地数据库

点击连接MySql数据库,弹出

端口3306是默认的mysql端口,主机我这里是本机,输入用户名密码,弹出 

这里sandboxOA是我与Django连接的的数据库

3、修改数据库的编码方式和排序方式

右键数据库,选择修改数据库,编码方式选择:utf8mb4

排序方式为:utf8mb_bin

4、修改表的编码方式和排序方式

选择一个表,依次点击设计表—选项—字符集、排序规则同样选择

utf8mb4

排序方式为:utf8mb_bin

保存

 5、重新 migrate

成功

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值