1 ERROR 1054 (42S22): Unknown column '01' in 'field list'
create table class
(
classno char(12) not null,
classname char(20) not null,
primary key(classno)
);
insert into class values(`01`,`一班`),(`02`,`二班`),(`03`,`三班`);
ERROR 1054 (42S22): Unknown column '01' in 'field list'
查资料发现可能是列名前多了空格,我就想着删除重建,然后遇到第二个问题(见下文),解决后发现还是报错。在他人提醒下把`改为了'。
不明白什么时候加`,什么时候加‘。
有MYSQL保留字作为字段的,必须加上反引号来区分!!!所谓的保留字就是select database insert 这一类数据库的sql指令,当我们不得已要拿他们来做表名和字段名的时候 我们必须要加反引号来避免编译器把这部分认为是保留字而产生错误。
2 ERROR 1217 (23000): Cannot delete or update a parent row: a foreign key constraint fails
这可能是MySQL在InnoDB中设置了foreign key关联,造成无法更新或删除数据。可以通过设置FOREIGN_KEY_CHECKS变量来避免这种情况。
SET FOREIGN_KEY_CHECKS = 0;
drop table class;
SET FOREIGN_KEY_CHECKS = 1;
在尝试插入MySQL表记录时遇到了ERROR 1054 (42S22):Unknown column问题,可能原因在于列名前有空格或保留字使用不当。解决方法包括检查列名,使用反引号包围保留字。同时,ERROR 1217 (23000)提示外键约束失败,这与InnoDB的外键关联有关,可通过调整FOREIGN_KEY_CHECKS变量处理。
https://blog.youkuaiyun.com/m0_54355125/article/details/120855637
1316

被折叠的 条评论
为什么被折叠?



