zoukankan      html  css  js  c++  java
  • django插入数据库报错django.db.utils.OperationalError: (1366, "Incorrect string value: '\xE4\xBF\x

    操作增加用户或更改用户权限,在保存的时候报出以下错误:

    django.db.utils.OperationalError: (1366, "Incorrect string value: '\xE4\xBF\xAE\xE6\x94\xB9...' for column 'message' at row 1")
    经过一波分析,得出结论:

    操作mysql数据库的时候,将数据插入表里出错
    

    1.查看数据库的编码格式

    show variables like "%char%";
    

    发现character_set_database 编码是latin1不是utf8,问题应该就在这里。

    那我们现在就要把这个字符改过来。

    应该注意,字符集编码是latin1的都改成utf8

    然后查看了下django连接的数据库,以及生成的表的编码发现编码不是utf8,所以这里还要修改数据库,表的编码

    查看数据库的编码:show create database databaseName;
    
    show create database test;
    
     

    发现这里也是latin1,同样,把这个改成utf8

    修改数据库编码: alter database databaseName default character set utf8 collate utf8_general_ci;
    

    修改后查看编码都已经是utf8了应该不会有错了

    然后将原来建的表都删除,重新建个表插入数据即可  

    生前无需久睡,死后自会长眠,努力解决生活中遇到的各种问题,不畏将来,勇敢面对,加油,你是最胖的,哈哈哈
  • 相关阅读:
    Alpha冲刺(5/10)
    Alpha冲刺(4/10)
    团队现场编程
    关于合同标准形的专题讨论
    关于相似标准形的专题讨论
    关于数学分析的计算题I(积分)
    关于数学分析的证明题III(级数)
    关于数学分析的证明题II(微分)
    关于数学分析的证明题I(积分)
    关于反常积分收敛的专题讨论
  • 原文地址:https://www.cnblogs.com/panshao51km-cn/p/15255050.html
Copyright © 2011-2022 走看看