[PHP-users 17258]Re: PostgreSQLのラージオブジェクト一覧の取得方法

Watanabe Takehiro takk @ ntt-it.co.jp
2003年 8月 8日 (金) 20:25:48 JST


渡辺(雄)です

>  psql には \ コマンドを実行したときに生成される SQL 文を表示する機能
>があります。
>  psql -E -c '\lo_list'
>としてみてください。

以下のようにして、その結果を得ました。
コレをPHPではsystem関数で実行するという理解でよいでしょうか?
それとも、もっと賢いやり方はありますか?
できれば********* QUERY ********** などは出力しないようにしたいのですが。

コマンド
$/usr/local/pgsql/bin/psql -U hoge -d hogedb -E -c '\lo_list'

結果
********* QUERY **********
SELECT loid as "ID", pg_catalog.obj_description(loid, 'pg_largeobject') as 
"Description"
FROM (SELECT DISTINCT loid FROM pg_catalog.pg_largeobject) x
ORDER BY "ID"
**************************

    Large objects
  ID   | Description
-------+-------------
 33682 |
 33686 |
 33691 |
(3 rows)

psqlの出力結果にSQLコマンドが出力されていたので、それをいつもやっている
データベースアクセスと、同じようにやってみたところ、
それでも必要な情報を得ることができました。
pg_catalog.pg_largeobject というテーブルを直接見に行っていますが
これはひょっとしてやらない方がよいでしょうか?

SELECT DISTINCT loid FROM pg_catalog.pg_largeobject

よろしくお願いします。


PHP-users メーリングリストの案内