2012-03-30 6 views
0

テーブルに挿入するPHPスクリプトを実行していますテーブルAから回収された値(AとBは異なるデータベースにあります)。別のクエリから直接返された値を挿入します(PHP)

Table A Columns 
[index(autoincrement),timestamp(currenttimestamp),col1,col2,.....col15] 

と私はBから値を取得するためのクエリを持っている:

$query= "select count(*) as col1, XXX as col2.....ZZZ as col15 from B"; 

ので

$result=mysql_query($query) 

は、どのように私は

を作ることができます

$row=$mysql_fetch_array($result) 

を持ちます

insert into A (col1,col2.....col15) values ($row['col1'],....$row['col15']; 

簡単にすべてのコードを書きませんか?ありがとう

答えて

4
Insert into db1.A (col1, col2, col3) SELECT col1, col2, col3 FROM db2.B 
+0

私は両方のテーブルが異なるデータベースにあることを忘れていました – Addev

+0

同じサーバー/ユーザーですか?もしそうなら私は私の答えを更新しました。それ以外の場合は、私が思うPHPコードを正しく実行する必要があります – haltabush

2

異なるサーバー上のデータベース間でデータを転送する必要がある場合は、sprintfとimplodeを使用してクエリを生成できます。

$query = sprintf('INSERT INTO table_name (%s) VALUES ("%s")', implode(', ', array_map('mysql_escape_string', array_keys($row))), implode('", "',array_map('mysql_escape_string', $row))); 
関連する問題