我需要使用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
答案 0 :(得分:2)
使用LAST_INSERT_ID()
功能:
$sql2 = "INSERT INTO articles(dj_ids) VALUES (LAST_INSERT_ID())";