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了应该不会有错了

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

    生前无需久睡,死后自会长眠,努力解决生活中遇到的各种问题,不畏将来,勇敢面对,加油,你是最胖的,哈哈哈
  • 相关阅读:
    谈谈Nginx有哪些特点
    网站嵌入百度地图制作
    8张图理解Java
    linux问题-easy_install安装bpython时报错
    linux问题-Centos 安装Sublime text 3
    python例子-Nmap扫描IP并更新
    python例子-PyQuery抓取信息.
    python例子-MySQLdb和练习题
    python例子-线程和队列
    mysql问题-centos7中mysql远程连接问题
  • 原文地址:https://www.cnblogs.com/panshao51km-cn/p/15255050.html
Copyright © 2011-2022 走看看