linux mysql 1366_Linux MySQl 5.7.17 MySQL ERROR 1366(HY000):Incorrect string value 解决方法
MySQL ERROR 1366(HY000):Incorrect string value,在往數(shù)據(jù)庫(kù)中插入中文的時(shí)候會(huì)出現(xiàn)。
這也就是編碼問題,網(wǎng)上大部分都是說設(shè)置下配置文件中的設(shè)置,而可悲的是在我的環(huán)境中配置文件是不允許修改,或者說和其他版本的不同。
大家都知道中文常用的編碼方式是gbk或者utf-8。我建議是使用utf-8這種編碼方式,因?yàn)榇髣?shì)所趨。
我們有時(shí)候設(shè)置了mysql的配置文件,而創(chuàng)建出來的 database ,table 的character 任然為默認(rèn)的 latin1。
我們可以通過 show create database/table database_name/table_name;來查看所創(chuàng)的庫(kù)和表的character。會(huì)出現(xiàn)ERROR 1366錯(cuò)誤的,編碼上就可能存在問題。如果編碼問題,那一下內(nèi)容就不用看了,我的這個(gè)筆記幫不了你。
解決方法有好幾個(gè),我也是百度了很久,把兩個(gè)成功的方法羅列在下面,方便自己方便他人。
方法一:在創(chuàng)建數(shù)據(jù)的時(shí)候設(shè)置好character ,這樣再創(chuàng)建 table的時(shí)候會(huì)和database的編碼方式相同。
CREATE DATABASE CHARACTER SET ;
當(dāng)然如果database創(chuàng)建的時(shí)候忘了設(shè)置,在創(chuàng)建表的時(shí)候任然可以設(shè)置character來補(bǔ)救。
CREATE TABLE (.......) CHARACTER SET ;
方法二:如果你很不辛的在創(chuàng)建database和table的時(shí)候都忘了設(shè)置character,那就可以使用方法二
alter table convert to charset gbk;
或者
alter table convert to charsetutf8;
---------------------
作者:DSpank
來源:CSDN
原文:https://blog.csdn.net/woainishmeng/article/details/67638617
版權(quán)聲明:本文為博主原創(chuàng)文章,轉(zhuǎn)載請(qǐng)附上博文鏈接!
總結(jié)
以上是生活随笔為你收集整理的linux mysql 1366_Linux MySQl 5.7.17 MySQL ERROR 1366(HY000):Incorrect string value 解决方法的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: mysql连接串指定编码_MYSQL创建
- 下一篇: linux cmake编译源码,linu