[PHP-users 23340]データベース内のすべてのテーブルについてあるsql文を実行したい
KOYAMA HIDEKI
hill47goodtree @ ybb.ne.jp
2004年 9月 18日 (土) 22:32:24 JST
Apache,PostgreSQL,PHPでWebシステムを組んでいます。そし
てデータベース『test1』にあるすべてのテーブルについて順
次sql文を実行したいのです。自分なりに調べてスクリプトを
いろいろ変更しましたが、以下のエラーが出て、sql文は1つの
テーブルしか受け付けないようです。対処法がわからずご教示
をお願いした次第です。よろしくお願いいたします。
Warning: pg_query(): Query failed: ERROR: syntax error at
or near "ORDER" at character 115 . in
/usr/local/apache2/htdocs/syoseki_data.php on line **
データ抽出エラー
『test1』に3つのテーブルがあるとします。
tablename
…………………
syoseki_18
syoseki_257
syoseki_3457
スクリプト『syoseki_data.php』
<?php
$dbname = "test1";
$user = "postgres";
$pass = "**********";
// データベースに接続する
$conn = pg_connect("dbname=$dbname");
$sql = "SELECT tablename FROM pg_tables WHERE tablename
like 'syoseki%' ORDER BY id;";
$res = pg_query($conn, $sql) or die("データ抽出エラー");
for ($i = 0; $i<pg_num_rows($res); $i++) {
$row = pg_fetch_array($res, $i, PGSQL_ASSOC);
$tablename1 = $row["tablename"];
// データを取り出す
$sql = "SELECT id, kara, made, number, name, syozoku,
syoseki FROM $tablename1 ORDER BY id;";
$res = pg_query($conn, $sql) or die("データ抽出エラー");
//line **
…………………
…………………
}
// 接続を解除する
pg_close($conn);
?>
PHP-users メーリングリストの案内