MYSQL写入数据时报错ERROR 1366 (HY000): Incorrect string value: '\xE8\x8B\xB1\xE5\xAF\xB8...' for c 5

--创建数据表CREATETABLEIFNOTEXISTStdb_goods(goods_idSMALLINTUNSIGNEDPRIMARYKEYAUTO_INCREME... -- 创建数据表
CREATE TABLE IF NOT EXISTS tdb_goods(
goods_id SMALLINT UNSIGNED PRIMARY KEY AUTO_INCREMENT,
goods_name VARCHAR(150) NOT NULL,
goods_cate VARCHAR(40) NOT NULL,
brand_name VARCHAR(40) NOT NULL,
goods_price DECIMAL(15,3) UNSIGNED NOT NULL DEFAULT 0,
is_show BOOLEAN NOT NULL DEFAULT 1,
is_saleoff BOOLEAN NOT NULL DEFAULT 0
);
-- 写入记录
INSERT tdb_goods (goods_name,goods_cate,brand_name,goods_price,is_show,is_saleoff) VALUES('R510VC 15.6英寸笔记本','笔记本','华硕','3399',DEFAULT,DEFAULT);
按回车会报错:
ERROR 1366 (HY000): Incorrect string value: '\xE8\x8B\xB1\xE5\xAF\xB8...' for column 'goods_name' at row 1
是怎么解决?输:SET NAMES gbk;也不管用
展开
 我来答
Bears_s
2015-04-29 · TA获得超过224个赞
知道小有建树答主
回答量:306
采纳率:0%
帮助的人:224万
展开全部
goods_name
改成utf编码
更多追问追答
追问
怎么改?可以详细点吗?
追答
手动用 数据库管理工具插入数据试试, 看你报错信息数据库已经把汉字转换成ascii编码了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
凉赞被谁占了
2015-04-29 · TA获得超过949个赞
知道小有建树答主
回答量:576
采纳率:100%
帮助的人:343万
展开全部

先把原先你创建的这个表删除,然后

CREATE TABLE IF NOT EXISTS tdb_goods(
goods_id SMALLINT UNSIGNED PRIMARY KEY AUTO_INCREMENT,
goods_name VARCHAR(150) NOT NULL,
goods_cate VARCHAR(40) NOT NULL,
brand_name VARCHAR(40) NOT NULL,
goods_price DECIMAL(15,3) UNSIGNED NOT NULL DEFAULT 0,
is_show BOOLEAN NOT NULL DEFAULT 1,
is_saleoff BOOLEAN NOT NULL DEFAULT 0
)ENGINE=InnoDB DEFAULT CHARSET=latin1;

最后加上了一句,里面的InnoDB 、 latin1 改成你自己的

追问
不管用
追答
你把你修改后执行的sql语句再发一下,我在这边是测试过的
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式