zoukankan      html  css  js  c++  java
  • Linux MySQl 5.7.17 MySQL ERROR 1366(HY000):Incorrect string value 解决方法

    MySQL ERROR 1366(HY000):Incorrect string value,在往数据库中插入中文的时候会出现。

    这也就是编码问题,网上大部分都是说设置下配置文件中的设置,而可悲的是在我的环境中配置文件是不允许修改,或者说和其他版本的不同。


    大家都知道中文常用的编码方式是gbk或者utf-8。我建议是使用utf-8这种编码方式,因为大势所趋。

    我们有时候设置了mysql的配置文件,而创建出来的 database ,table 的character 任然为默认的 latin1。

    我们可以通过 show create database/table database_name/table_name;来查看所创的库和表的character。会出现ERROR 1366错误的,编码上就可能存在问题。如果编码问题,那一下内容就不用看了,我的这个笔记帮不了你。


    解决方法有好几个,我也是百度了很久,把两个成功的方法罗列在下面,方便自己方便他人。

    方法一:在创建数据的时候设置好character ,这样再创建 table的时候会和database的编码方式相同。

    CREATE DATABASE <DATABASE_NAME> CHARACTER SET <CODE>;

    当然如果database创建的时候忘了设置,在创建表的时候任然可以设置character来补救。

    CREATE TABLE <TABLE_NAME> (.......) CHARACTER SET <CODE>;


    方法二:如果你很不辛的在创建database和table的时候都忘了设置character,那就可以使用方法二

    alter table <tbname> convert to charset gbk;

    或者

    alter table <tbname> convert to charset utf8;


    ---------------------
    作者:DSpank
    来源:CSDN
    原文:https://blog.csdn.net/woainishmeng/article/details/67638617
    版权声明:本文为博主原创文章,转载请附上博文链接!

  • 相关阅读:
    浅析如何让 (a === 1 && a === 2 && a === 3) 返回 true
    浅析单点登录的三种实现方式
    浅析瀑布流布局原理及实现方式
    浅析Java中三目运算符可能产生的坑
    【转】IO
    [转]gomonkey学习
    从sha1的计算例子,理解计算机的数据表示?16进制输出?二进制输出??
    [转]Golang第三方包应该如何安装--在线和离线
    【转】goconvey使用
    go import 时 点号 和下划线的区别
  • 原文地址:https://www.cnblogs.com/botoo/p/10081607.html
Copyright © 2011-2022 走看看