课程相关问题
来源:2-7 完整性约束条件介绍
qq_粽翎_0
2019-12-02 16:44:33
CREATE DATABASE imooc; USE imooc; CREATE TABLE IF NOT EXISTS user( id INT, username VARCHAR(20), password CHAR(32), email VARCHAR(50), age TINYINT, card CHAR(18), tel CHAR(11), salary FLOAT(8,2), married TINYINT(1), addr VARCHAR(100), sex ENUM('男','女','保密') )ENGINE=INNODB CHARSET=UTF8; INSERT user(id,username,password,email,age,card,tel,salary,married,addr,sex) VALUES(1,'root','123','76126521@qq.com',20,'1365489512','15648975621',154685.32,0,'北京','男');
我也是跟着老师敲的,应该是没问题的,但是运行后报了这个错误
ERROR 1366 (HY000): Incorrect string value: '\xB1\xB1\xBE\xA9' for column 'addr' at row 1
在地址处出错了,这个好像是编码的问题导致的吧,可是前面已经把编码设置为utf-8了,咋回事,求解!
1回答
好帮手慕珊
2019-12-02
同学,你好!有可能字段不是utf8编码,创建表格时在addr字段后面加上CHARACTER SET utf8再试试。
另外,还用下面语句查看一下表格字段的字符集。
SHOW FULL COLUMNS FROM imooc_user;
如果字符集都没问题还是不能插入中文,建议装一个mysql的客户端,比如mysql官方的workbench,或者Navicat试试。之前也有同学字符集都改了还是报错,换成其他工具就可以了。有的时候是控制台本身的问题。
如果我的回答解决了你的疑惑,请采纳!祝学习愉快!
相似问题