1
私はこの問題は、サブ$result
が親1で台無しにされ、whileループは最初のサイクルで動作することである
<?php
$result=$mysqli->query("SELECT value1, value2 FROM table1");
while($row=$result->fetch_assoc())
{
$value1 = $row['valu1'];
$value2 = $row['value2'];
$mysqli->query("INSERT IGNORE INTO table2 (value1) VALUES ('$value1')");
$result2 = $mysqli->query("SELECT id FROM table2 WHERE value1='$value1'");
$row2 = $result2->fetch_assoc();
$column1_id = $row2['id'];
$result2->close();
$mysqli->query("INSERT IGNORE INTO table3 (value2) VALUES ('$value2')");
$result3 = $mysqli->query("SELECT id FROM table3 WHERE value1='$value2'");
$row3 = $result3->fetch_assoc();
$column2_id = $row3['id'];
$result3->close();
$mysqli->query("INSERT INTO table4 (value1,value2) VALUES ('$value1','$value2')");
}
?>
富栄としてテーブルから取得したデータを処理しています。
アドバイスありがとうございますが、これは私の問題を議論するための簡略化されたバージョンです。実際のコードは、table1から出てくる値に対するPHP処理の多くが複雑になります。 – Googlebot
はい、それを理解してください...あなたはデータをマッサージするロジックを実行し、プロセスの最後にファイルに出力し、mysqlのインポートを実行できますか?あなたは明示的にあなたのコーディング環境を記述する必要があります。私は部外者です。とにかく、1つ1つループして挿入することは、これまでにない悪い方法です。 – ajreal
ケースは変わっていません。私は不器用なデータテーブルを持っており、いくつかのテーブルにデータをホストすることによって正規化されたデータベースを作成したいと考えています。このプロセスでは、PHPで書式設定のようなテキストを扱いたいと思っています。 – Googlebot