給大家先看下我建表的代碼:
create table zeng0822(
id int primary key auto_increment,
sname varchar(10) not null default "",
gender char(1) not null default "",
company varchar(20) not null default "",
salary decimal(6,2) not null default 0.00,
fanbu smallint not null default 0
)engine myisam charset utf8;
問題一:
添加資料程序中發現gender列寫"男"出現錯誤;
問題二:
第一次在sname列添加兩字中文姓名是沒問題的,第二次選了sname/gender/salary三列添加資料,告訴我
ERROR 1366 (HY000): Incorrect string value: '\x80\xE9\x94\x8B' for column 'sname' at row 1、
問題一我直接輸入1來暫時解決了插入問題,但是還不明白;
問題二查閱了許多辦法,包括在/etc中新建my.cnf檔案(反而導致無法啟動mysql)、將MYSQL資料庫統一設定成: gbk格式等等都不好用。
自學小白求各位大神幫忙解答!
uj5u.com熱心網友回復:
把varchar換成nvarcharuj5u.com熱心網友回復:
第一個問題gender欄位是char(1)型別,是一個位元組,只能輸入一個數字或者一個字母,一個漢字包括2個位元組,所以存不進去。uj5u.com熱心網友回復:
第二個問題,應該是資料庫字符編碼的問題。建議將資料庫編碼修改成utf8的格式。參考:https://blog.csdn.net/weixin_43249665/article/details/87946287
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/51355.html
標籤:MySQL
