PHP - SQL如何从表中选择ID并插入另一个表?

时间:2015-09-24 19:06:15

标签: php mysql sql pdo

我需要使用insert into语句进行内连接。我需要将数据插入到2个表中,但是第二个表中的记录的id也应该存储在第一个表的列中。

第一个sql部分为dj表中的每个给定dj名称创建一个新记录,第二部分应该从添加的dj中获取id并将其插入表格中的列#34;文章"

$alle_djs = explode(', ', $this->djs);
foreach ($alle_djs as $elke_dj) {
  $sql = "INSERT INTO dj (name) VALUES ( :name_dj )";
  $st = $conn->prepare($sql);
  $st->bindValue( ":name_dj", $elke_dj, PDO::PARAM_STR );
  $st->execute();

  $sql2 = "INSERT INTO articles (dj_ids) SELECT id FROM dj WHERE name=:name_dj";
  $st2 = $conn->prepare($sql2);
  $st2->bindValue( ":name_dj", $elke_dj, PDO::PARAM_STR );
  $st2->execute();
}
$conn = null

1 个答案:

答案 0 :(得分:2)

使用LAST_INSERT_ID()功能:

$sql2 = "INSERT INTO articles(dj_ids) VALUES (LAST_INSERT_ID())";
相关问题