数据库错误 ERROR 1366 (HY000): Incorrect string value: ‘\xD4\xF8\xBB\xAA‘ for column ‘Sname‘ at row 1解决
數(shù)據(jù)庫錯誤 ERROR 1366 (HY000): Incorrect string value: ‘\xD4\xF8\xBB\xAA’ for column ‘Sname’ at row 1解決
一.原因:
插入數(shù)據(jù)時有中文字符出現(xiàn)
二.解決方案
1.查看當(dāng)前服務(wù)器狀態(tài) : status或者\s
2.修改數(shù)據(jù)庫的默認編碼方式
使用命令:
alter database mydb character set gbk;查看修改是否成功:使用命令:\s或則status;可以看到Db characterset:gbk 設(shè)置成功了。
插入數(shù)據(jù)試一下:
發(fā)現(xiàn)依舊報錯.報錯的原因是,在修改數(shù)據(jù)庫mydb編碼方式前,表department就已經(jīng)建立了。因此,表department它的編碼還是數(shù)據(jù)庫之前默認的編碼方式latin1,這個可以通過下面的命令來得到確認:
show create table department;因此,還需要修改表格的編碼方式。
修改表格的默認編碼方式,并插入數(shù)據(jù)試一下
alter table department character set gbk;發(fā)現(xiàn)還是不行,
使用命令:status或\s
發(fā)現(xiàn)表的編碼方式已經(jīng)是gbk了,但是dname的編碼仍然是latin1,所以我們應(yīng)該對dname屬性進行編碼方式修改,使用命令:
alter table department modify dname varchar(20) character set gbk;發(fā)現(xiàn)已經(jīng)成功了!
另外,我們也可以在創(chuàng)建表的時候指定字符集,這里我就不做演示了,感興趣的小伙伴可以在下方留言.
還有我們可以修改mysql默認字符集編碼方式
找到Mysql數(shù)據(jù)庫安裝路徑,打開my.ini配置文件
修改默認字符集編碼方式為gbk,(沒有就加上)
重新登錄到mysql數(shù)據(jù)庫就可以了
總結(jié)
以上是生活随笔為你收集整理的数据库错误 ERROR 1366 (HY000): Incorrect string value: ‘\xD4\xF8\xBB\xAA‘ for column ‘Sname‘ at row 1解决的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: JDBC练习五
- 下一篇: mysql for update场景_一