MySQL外键错误

MySQL外键错误,mysql,Mysql,我正在尝试创建一个以varchars作为主键和外键的自连接表。表会创建,但在尝试向表中插入数据时,我会不断收到错误 桌子 数据转储 /*Data for the table `staff` */ INSERT INTO staff (STAFF_ID, NAME, EMAIL, MANAGER_ID) VALUES ('lo1234', 'test','**.com', null); INSERT INTO staff (STAFF_ID, NAME, EMAIL, MANAGE

我正在尝试创建一个以varchars作为主键和外键的自连接表。表会创建,但在尝试向表中插入数据时,我会不断收到错误

桌子

数据转储

   /*Data for the table `staff` */
  INSERT INTO staff (STAFF_ID, NAME, EMAIL, MANAGER_ID)
  VALUES ('lo1234', 'test','**.com', null);
 INSERT INTO staff (STAFF_ID, NAME, EMAIL, MANAGER_ID)
  VALUES ('er8909', 'test2','**.com', 'l01234');
 INSERT INTO staff (STAFF_ID, NAME, EMAIL, MANAGER_ID)
 VALUES ('ru6758', 'r**','**.com', 'l01234');
 INSERT INTO staff (STAFF_ID, NAME, EMAIL, MANAGER_ID)
 VALUES ('ad4567', 'admin','**.com', null);

架构的构造或插入的数据是否有问题?

您在这一行出错,请将
1o1234
转换为
1012345
,如下所示

INSERT INTO staff (STAFF_ID, NAME, EMAIL, MANAGER_ID)
          VALUES ('lo1234', 'test','**.com', null);
将此更改为:

INSERT INTO staff (STAFF_ID, NAME, EMAIL, MANAGER_ID)
  VALUES ('l01234', 'test','**.com', null);

您在这一行出错,请将
1o1234
改为
1012345
,如下所示

INSERT INTO staff (STAFF_ID, NAME, EMAIL, MANAGER_ID)
          VALUES ('lo1234', 'test','**.com', null);
将此更改为:

INSERT INTO staff (STAFF_ID, NAME, EMAIL, MANAGER_ID)
  VALUES ('l01234', 'test','**.com', null);

您为什么要这样做
外键(经理id)引用员工(员工id))
?@EdHeal:这是对同一个表的引用,与作为该人员经理的人员(员工)建立连接。您为什么要这样做
外键(经理id)引用员工(员工id))
?@EdHeal:这是对同一个表的引用,建立了与该人的经理(工作人员)的连接。感谢您指出错误。我把它改成了lo1234值,它成功了。谢谢你指出了错误。我将其更改为lo1234值,结果成功了。