its not very clear if pg_lo_import needs to have pg_lo_open called first. Because pg_lo_import handles the process of writign to the file, it seems logical that pg_lo_open does not need to be called. However due to the ugly nature of how postgres handles oid objects, it would be nice to have this documented.
pg_lo_import
(PHP 4 >= 4.2.0, PHP 5)
pg_lo_import — ファイルからラージオブジェクトをインポートする
説明
int pg_lo_import
( resource $connection
, string $pathname
)
int pg_lo_import
( string $pathname
)
pg_lo_import() は、ファイルシステム上のファイルの データをもとにして新しいラージオブジェクトをデータベース内に作成します。
ラージオブジェクトインターフェースは、トランザクションブロックの中で 使用する必要があります。
注意: セーフモード が有効の場合、PHP は操作を行うファイル/ディレクトリが実行するスクリプトと 同じ UID (所有者)を有しているかどうかを確認します。
注意: この関数は、以前は pg_loimport() と呼ばれていました。
パラメータ
- connection
-
PostgreSQL データベース接続リソース。connection が指定されていない場合はデフォルトの接続が使用されます。 デフォルトの接続は、直近の pg_connect() あるいは pg_pconnect() によって作成されたものです。
- pathname
-
クライアントのファイルシステムからラージオブジェクト用データを 読み込む際のフルパスとファイル名。
返り値
作成されたラージオブジェクトの OID を返します。 失敗した場合には FALSE を返します。
変更履歴
| バージョン | 説明 |
|---|---|
| 4.2.0 |
関数の構文が変わりました。以前は次のようなものでした。
int pg_lo_import
( string $pathname
[, resource $connection
] )
|
例
例1 pg_lo_import() の例
<?php
$database = pg_connect("dbname=jacarta");
pg_query($database, "begin");
$oid = pg_lo_import($database, '/tmp/lob.dat');
pg_query($database, "commit");
?>
pg_lo_import
vi2 at vi2 dot com
01-Aug-2002 05:54
01-Aug-2002 05:54
yohgaki at php dot net
19-Jun-2002 06:04
19-Jun-2002 06:04
Due to a bug, OLD API does not available with PHP 4.2.0 and 4.2.1.
PHP 4.2.2 will support OLD API again and will be kept long enough.
New API will be available PHP 4.2.0 to later versions.
yohgaki at php dot net
19-Jun-2002 06:00
19-Jun-2002 06:00
Due to a bug, PHP 4.2.0 and 4.2.1 does not support pg_lo_import() old API. It's fixed in PHP 4.2.2.
BTW, new API will be always available from PHP 4.2.0 to later versions. Older API will be kept long enough, also.
ceco at noxis dot net
15-May-2002 11:08
15-May-2002 11:08
it works for me (php-4.2.1)
not like this
int pg_lo_import ( string pathname [, resource connection])
but
int pg_lo_import ( resource connection, string pathname )
don't know the reason
