问题描述
代码如下:CREATETABLE`student`(`id`char(10)NOTNULL,`sname`char(10)defaultNULL,`password`char(10)defaultNULL,`sclass`char(20)defaultNULL,`smajor`char(20)defaultNULL,PRIMARYKEY(`id`))ENGINE=InnoDBDEFAULTCHARSET=utf8;INSERTINTO`student`VALUES('001','a','1','1','计算机');INSERTINTO`student`VALUES('002','b','2','2','计算机');INSERTINTO`student`VALUES('003','c','3','3','计算机');INSERTINTO`student`VALUES('004','d','4','4','计算机');INSERTINTO`student`VALUES('005','e','5','5','计算机');INSERTINTO`student`VALUES('006','f','6','1','计算机');INSERTINTO`student`VALUES('007','g','7','1','计算机');
网上百度到所有贴子都是说问题出在字段和系统默认保留字有冲突,但是经过检查,我的代码没有这样的问题。我导入SQL文件的时候提示出错,相关代码在上面了。奇葩的是,INSERT语句如果单独拆开一条一条处理,就不会报错。
解决方案
解决方案二:
是不是insert语句后面的分号问题,不加分号试试
解决方案三:
貌似是“计算机”这几个字乱码造成的……
解决方案四:
仔细检查你代码的标点估计有中文标点
解决方案五:
乱码了你安装mysql时选择了编码?UTF-8选择了?
解决方案六:
showvariableslike'character%'把这句命令执行一下看看你mysql是不是utf-8不是得话这就是原因了
解决方案七:
执行前先setnamesutf8;
解决方案八:
看上去是中文乱码的问题,你先检查一下你的数据库编码是不是utf-8的,你再重新编译一下看看