我有一个SQL查询,它将新记录插入table1
。记录' id'是PK(field1
)并具有自动增量属性:
INSERT INTO table1 (field2, field3) VALUES ("Hello", "World")
我的下一个查询(之后立即)将记录插入table2
,并要求在上一个查询中受影响的行的ID。
INSERT INTO table2 (field2) VALUES (PKValueOfAffectedRowInPreviousQuery)
是否有一个函数可以为查询中受影响的行返回结果集,类似$result = $stmt->return_affected_records()
行,以便我可以访问此field1
值?
这与返回受影响行的 number 完全不同,我知道这些行是使用$stmt->affected_rows
收到的。我关注那些受影响的记录中的值。
答案 0 :(得分:0)
我认为你可以在这两个select
之间使用insert
执行此操作:
$value1 = "Hello";
$value2 = "World";
INSERT INTO table1 (field2, field3) VALUES ($value1,$value2);
$sql = "SELECT field1 FROM table1 WHERE field2 ='" . $value1 . "' AND field3 = '" . $value2 . "'";
现在你只需要从结果中提取id
并进行第二次插入。