文章詳情頁
關于Mysql插入中文字符報錯ERROR 1366(HY000)的解決方法
瀏覽:5日期:2023-06-28 19:41:17
目錄問題原因解決1、查看當前庫默認編碼格式2、將character_set_database和character_set_server設置為utf83、刪除數據庫并新建數據庫,并切到該數據庫下驗證總結問題加載含有中文字符的數據到表中出錯mysql> CREATE TABLE food( -> id INT(10) PRIMARY KEY AUTO_INCREMENT NOT NULL, -> NAME VARCHAR(20) NOT NULL, -> company VARCHAR(30) NOT NULL, -> price FLOAT, -> produce_time YEAR, -> validity_time INT(4), -> address VARCHAR(50) -> );Query OK, 0 rows affected (0.07 sec)mysql> INSERT INTO food(id,NAME,company,price,produce_time,validity_time,address) VALUES(4,'FF咖啡','FF咖啡廠',20,2002,5,'天津');ERROR 1366 (HY000): Incorrect string value: '\xE5\x92\x96\xE5\x95\xA1' for column 'NAME' at row 1原因mysql默認編碼latin1是不支持中文字符的,所以報錯。
建表、添加數據
mysql> create table Student( -> Sno int not null auto_increment primary key, -> Sname varchar(10) not null, -> Sex char(1) not null, -> Sage tinyint(100) not null, -> Sdept char(4) not null)comment = '學生表';Query OK, 0 rows affected (0.03 sec)mysql> insert into Student values ( 1,'李勇', '男', 20, 'CS');Query OK, 1 row affected (0.02 sec)ok,成功解決
總結如果某表中需要添加中文字符時需要在其庫之前將character_set_database和character_set_server設置為utf8
set character_set_database=utf8;set character_set_server=utf8;然后再建庫,建表插入中文字符數據
到此這篇關于關于Mysql插入中文字符報錯ERROR 1366(HY000)的解決方法的文章就介紹到這了,更多相關Mysql中文字符報錯ERROR1366內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!
排行榜
