2014-05-19 45 views
0

我正在處理一個小項目,並且在循環MySQL插入時遇到了一些問題。我目前有2個數據庫表。我從一個到另一個提取信息。循環mysql查詢以從表中獲取多行數據並插入另一個表

表數據:

$q = "SELECT * FROM HARDWARE WHERE ID_2=".$db->qstr(20); 
$rss = $db->execute($q); 
$re2=$rss->GetArray(); 

所以我得到的數據精細的陣列。

只有當ID爲{20}時才插入數據 目前我有2行ID_2 = 20,但它只插入一行而不是兩個。這裏是我的插入查詢。

$sql = "INSERT INTO PARTS SET 
      IN_ID  =". $db->qstr($in_id).", 
     ER_ID  =". $db->qstr($er_id).", 
     ITEM  =". $db->qstr($re2[0]['ITEM'] ).", 
     NAME  =". $db->qstr($re2[0]['NAME'] ); 

它插入的數據很好,只有一行不是多行。有什麼建議麼?

謝謝。

+0

爲什麼不在MySQL中插入? –

+0

在你的返回結果的循環中添加插入查詢。 –

+0

是的,我需要插入循環。從我知道我的查詢應該工作 – user3620142

回答

0

插入您的查詢在循環

foreach ($re2 as $r): $sql = "INSERT INTO PARTS SET IN_ID =". $db->qstr($in_id).", ER_ID =". $db->qstr($er_id).", ITEM =". $db->qstr($r['ITEM'] ).", NAME =". $db->qstr($r['NAME'] ); endforeach;

,或者使用多個插件 Inserting multiple rows in mysql

都應該在你那裏有什麼罰款。

+0

我可以不只是在這種情況下使用foreach? – user3620142

+0

是的你可以,你嘗試過什麼嗎? –

+0

我試過foreach,但我得到不正確的數據。 – user3620142

相關問題