私は、MySQLデータベースのすべてのテーブルを選択し、それらのデータを別のテーブルに入れることを目的とした簡単なスクリプトを作成しています。 問題のテーブルは同様に構造化されています。私の目的は、各テーブルの名前を書く必要なしにこれを達成することです(そのため、何百ものテーブルを管理できます)。複数のテーブルの内容を別のテーブルに追加する
したがって、この例のために私はアルファとベータを持っており、その内容はデルタにコピーしたいと思います。 私は、ベース内のすべてのテーブルの名前をリストするループを使って実行しようとしました。そして、変数を持つMySQLクエリを使用します。 問題は、それが 表を言って私にエラーを返す続け、ある「test_db.Resource」は は存在しません(TEST_DBが私の基本とされているリソースの名前であることを...私は考えている!)
持っていますどのようにこれを行うにはどのようなアイデアですか?
ここに私のコードです:
<?php
// Make a MySQL Connection
mysql_connect("localhost", "root", "root") or die(mysql_error());
mysql_select_db("test_db") or die(mysql_error());
$tables = mysql_list_tables("test_db");
while (list($table) = mysql_fetch_row($tables)) {
echo "$table <br />";
}
// query($q);
mysql_query("INSERT INTO delta
SELECT null, name, age FROM $tables ")
or die(mysql_error());
?>
ご協力ありがとうございます。今私は重複した問題があります。配列を使用しない方法がありますか、それを使用して他のすべてのテーブルを返すようにしますか? – sf89
あなたは条件を使用することができます。 'テーブルがデルタ'であれば '続行します; – Ibu