MySQL常見報錯及解決方案
阿新 • • 發佈:2018-12-09
ERROR 1136 (21S01): Column count doesn’t match value count at row 1
ERROR 1136 (21S01): Column count doesn't match value count at row 1
出現原因
新增資料時欄位名數和值數量不一致,
比如上面的就是
name->值1,值2,值3 錯誤!!!
解決辦法
一個欄位對應一個值
insert into 表名 (欄位) values (值)
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ‘ondelete cascade)’ at line 6
出現原因
這種一般都是因為語法錯誤
解決辦法
檢查語法並且修改
ERROR 1452 (23000): Cannot add or update a child row: a foreign key constraint fails (db1
.emp
, CONSTRAINT emp_of_des_fk
FOREIGN KEY (dep_id
) REFERENCES department
(id
) ON DELETE CASCADE ON UPDATE CASCADE)
出現原因
外來鍵約束失敗,可能不存在外來鍵對應主鍵
解決辦法
在主表的行中新增對應的主鍵或者從表中新增正確的外來鍵(值)
ERROR 1054 (42S22): Unknown column ‘欄位’ in ‘field list’
出現原因
欄位不存在,新增失敗
解決辦法
新增該欄位或者檢查要操作的欄位是否有誤.
ERROR 1146 (42S02): Table ‘db1.employee’ doesn’t exist
出現原因
表不存在,新增資料失敗
解決辦法
檢查表名稱或者建立該表
ERROR 1045 (28000): Access denied for user ‘root’@‘localhost’ (using password: YES)
出現原因
密碼錯誤
解決辦法
重置或者檢查密碼是否正確
如何重置資料庫密碼
ERROR 1051 (42S02): Unknown table ‘despartment’
出現原因
刪除不存在的表會導致ERR 1051
解決辦法
檢查表名稱
ERROR 1005 (HY000): Can’t create table ‘db1.emp’ (errno: 150)
出現原因
1、外來鍵的引用型別不一樣,如主鍵是int外來鍵是char
2.找不到主表中引用的列
3.主鍵和外來鍵的字元編碼不一致,也可能儲存引擎不一樣
4.主表並不存在
解決方案
1.檢查外來鍵和主鍵的引用型別
2.檢查主表中的列
3.檢查逐漸和外來鍵的字元編碼,儲存引擎
4.檢查主表是否存在
ERROR 1364 (HY000): Field ‘id’ doesn’t have a default value
出現原因
欄位約束為not null,但是插入資料時並沒有賦值
解決辦法
給該欄位新增預設值
或設定為主鍵自增,
或去掉該列屬性not null
ERROR 1217 (23000): Cannot delete or update a parent row: a foreign key constraint fails
出現原因
該表是主表,其他表中外來鍵存有該表的主鍵
解決方案
先刪除從表(存有該表主鍵的表),再刪除即可解決
ERROR 1067 (42000): Invalid default value for ‘gender’
出現原因
在建立表的時候使用到了漢字,但是字符集編碼不統一,導致錯誤.
解決辦法
設定字符集
如何設定字符集?
持續更新```````````