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

我需要使用insert into语句进行内部联接.我需要将数据插入2个表中,但第二个表中的记录ID也应存储在第一个表中的列中.

一个sql部分为dj表中的每个给定dj名称创建了一条新记录,第二个部分应该从添加的dj中获取ID,并将其插入到“ articles”表的列中.

$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

解决方法:

使用LAST_INSERT_ID()函数

$sql2 = "INSERT INTO articles(dj_ids) VALUES (LAST_INSERT_ID())";

相关文章

统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
前言 之前做了微信登录,所以总结一下微信授权登录并获取用户...
FastAdmin是我第一个接触的后台管理系统框架。FastAdmin是一...
之前公司需要一个内部的通讯软件,就叫我做一个。通讯软件嘛...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...