Mysql不插入记录


Mysql not insert records

我有两个表:employeeemployee_group。插入到第一个表后,我将从该表中获取最后插入的id。接下来我需要插入表employee_group。SQL:

INSERT INTO employee_group (employee_id, group_id) 
  SELECT {$currentEmpId}, group_id 
  FROM employee_group 
  WHERE employee_id = {$anyId}

MySQL已返回TRUE。但记录尚未插入。

我注意到,如果尝试为以前插入的员工插入记录,则查询将成功。示例:

  1. 插入到员工,将返回$currentEmpId作为上次插入的id
  2. INSERT INTO employee_group (employee_id, group_id) SELECT {$currentEmpId - 1}, group_id FROM employee_group WHERE employee_id = {$anyEmpId}

或者,如果我尝试同时插入当前员工和以前员工的记录,那么第一次查询将不成功,但第二次查询可以。

数据库没有触发器、外键或函数。什么都没有,只有数据。

我陷入僵局。

UPD:如果我把记录带到php变量中,然后对它进行foreach,并像INSERT INTO employee_group (employee_id, group_id) VALUES (xxx, yyy)一样将每个记录作为一个项目插入,我也会遇到这个问题。

INSERT INTO employee_group (employee_id, group_id) 
  VALUES({$toEmpId},{SELECT group_id FROM employee_group WHERE employee_id = {$fromEmpId}})

看看吧。。

试试这个

INSERT INTO employee_group (employee_id, group_id) 
  VALUES({$toEmpId},{SELECT {$toEmpId}, group_id FROM employee_group WHERE employee_id = {$fromEmpId}})