300字范文,内容丰富有趣,生活中的好帮手!
300字范文 > mysql建表时插入中文_Mysql新建表 插入中文时报错“Incorrect string value: '\

mysql建表时插入中文_Mysql新建表 插入中文时报错“Incorrect string value: '\

时间:2023-12-22 18:22:11

相关推荐

mysql建表时插入中文_Mysql新建表 插入中文时报错“Incorrect string value: '\

有时候我们在往数据库中输入信息时,如果输入的内容是中文,会报错“Incorrect string value: '\xE4\xBD\xA0\xE5\xA5\xBD' for column”。

例如:

CREATE TABLE test(ID INT PRIMARY KEY AUTO_INCREMENT

,test_name VARCHAR(20) ,test_num INT); /*建立一个表*/

insert into test(test_name) values('你好'); /*建表之后插入一条带有中文的数据*/

解决的方法:

1、在建立表时设置默认字符串编码方式为utf8

CREATE TABLE test2(ID INT PRIMARY KEY AUTO_INCREMENT

,test_name VARCHAR(20) ,test_num INT)default charset = utf8; /*建立一个表,加上“default charset = utf8”,设置默认字符串编码方式为utf8。*/

insert into test2(test_name) values('你好'); /*建表之后插入一条带有中文的数据*/

这次就可以成功添加

2、已经添加的表,需要设置一下:ALTER TABLE tablename CONVERT TO CHARACTER SET utf8 COLLATE utf8_unicode_ci;

ALTER TABLE test CONVERT TO

CHARACTER SET utf8 COLLATE utf8_unicode_ci; /*例如刚刚建立的test表,插入中文时会报错,现在对其进行设置*/

insert into test(test_name) values('你好'); /*设置之后插入一条带有中文的数据*/

3、直接修改数据库的字符串编码属性:ALTER DATABASE databasename CHARACTER SET utf8 COLLATE utf8_unicode_ci

ALTER DATABASE testdb CHARACTER

SET utf8 COLLATE utf8_unicode_ci; /*修改数据库testdb的编码方式*/

CREATE TABLE testdb.test3(ID INT PRIMARY KEY AUTO_INCREMENT

,test_name VARCHAR(20) ,test_num INT)default charset = utf8; /*建立一个表,加上“default charset = utf8”,设置默认字符串编码方式为utf8。*/

insert into testdb.test3(test_name) values('你好'); /*建表之后插入一条带有中文的数据*/

mysql建表时插入中文_Mysql新建表 插入中文时报错“Incorrect string value: \xE4\xBD\xA0\xE5\xA5\xBD for column”问题...

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。