mysql常见错误
Error Code: 1366. Incorrect string value: '\xE5\xAD\xA6\xE5\xB7\xA5...'
将该表中的每一列的字符集都改为utf-8
SQL语句:alter table dept change loc loc varchar(50) character set utf8;
Error Code: 1062. Duplicate entry '40' for key 'PRIMARY'
设置主键自增时,和设置主键时可能有粗心的同学和我一样就是将一个表中的有两个相同值的属性设为主键这时就会报错。解决方法很简单就是保证设置主键属性下的值不能相同即可。
Error Code: 1005. Can't create table 'book.bookinfo' (errno: 150)
在mysql 中建立引用约束的时候会出现MySQL ERROR 1005: Can't create table (errno: 150)的错误信息结果是不能建立 引用约束。
出现问题的大致情况
1、外键的引用类型不一样,如主键是int外键是char
2、找不到主表中引用的列
3、主键和外键的字符编码不一致,也可能存储引擎不一样
Error Code: 1146. Table 'book.book' doesn't exist
INNODB是MYSQL数据库一种流行的数据库引擎,支持事务(行级),在企业级应用上成为可能
ibdata用来储存文件的数据,而库名的文件夹里面的那些表文件只是结构而已,由于新版的mysql默认试innodb,所以ibdata1文件默认就存在了,少了这个文件有的数据表就会出错。
可以尝试修复数据库:repair table tablename
Error Code: 1452. Cannot add or update a child row
原因:
设置的外键和对应的另一个表的主键值不匹配。
解决方法:
找出不匹配的值修改。
或者清空两表数据。
Error Code: 1136. Column count doesn't match value count at row 1
由于写的SQL语句里列的数目和后面的值的数目不一致,
比如insert into 表名 (field1,field2,field3) values('a','b')这样前面的是三列,后面却只有二个值,这就会出现这个错误的。