1
我正在使用SELECT從MySQL中檢索某些項目。當語句正在讀取時,我想要將每個返回的行並將某些信息從它移動到另一個表中。在數據庫表之間移動對象
$stmt = $mysqli->prepare("SELECT info FROM table");
$stmt->execute();
$stmt->bind_result($info);
$stmt2 = $mysqli->prepare("INSERT INTO another_table (info) VALUES (?)");
$stmt2->bind_param('s', $info);
while ($stmt->fetch()) {
//$info is different for each loop
$stmt2->execute();
}
這是行不通的。 $stmt2->bind_param()
後沒有任何反應。但是,我可以在while循環中使用$info
填充數組,然後使用相同的確切數據庫代碼將數組中的信息插入另一個表中。但是,該陣列可能會變得太大並導致內存問題。
你能解釋一下這個查詢的工作原理嗎?如果我想包含來自PHP的變量,以便它們與第二個表中的「info」包含在同一行中,該怎麼辦?我如何將它們插入到查詢中(我會在哪裏放置問號)? –
@JackHumphries:'INSERT INTO'可以使用'SELECT'從另一個表中獲取值,這就是它的作用。如果你想爲每一行放入相同的值,它看起來像是INSERT INTO another_table(info,other_column)SELECT info,?從表格中,我想... – Ryan