mirror of
https://github.com/php/php-src.git
synced 2024-10-14 21:12:35 +00:00
3087b96ece
@Added large OID value (2^31 to 2^32) support for pg_lo_import()/pg_lo_unlink()/pg_lo_open()/pg_lo_export(). (Yasuo)
49 lines
1.3 KiB
PHP
49 lines
1.3 KiB
PHP
<?php
|
|
|
|
include('config.inc');
|
|
|
|
$db = pg_connect($conn_str);
|
|
pg_exec ($db, "begin");
|
|
$oid = pg_lo_create ($db);
|
|
if (!$oid) echo ("pg_lo_create() error\n");
|
|
$handle = pg_lo_open ($db, $oid, "w");
|
|
if (!$handle) echo ("pg_lo_open() error\n");
|
|
pg_lo_write ($handle, "large object data\n");
|
|
pg_lo_close ($handle);
|
|
pg_exec ($db, "commit");
|
|
|
|
pg_exec ($db, "begin");
|
|
$handle = pg_lo_open ($db, $oid, "w");
|
|
pg_lo_read($handle, 100);
|
|
pg_lo_tell($handle);
|
|
pg_lo_seek($handle, 2);
|
|
pg_lo_close($handle);
|
|
pg_exec ($db, "commit");
|
|
|
|
pg_exec ($db, "begin");
|
|
$handle = pg_lo_open ($db, $oid, "w");
|
|
pg_lo_read_all($handle);
|
|
if (pg_last_error()) echo "pg_lo_read_all() error\n".pg_last_error();
|
|
pg_lo_close($handle);
|
|
pg_exec ($db, "commit");
|
|
|
|
pg_exec ($db, "begin");
|
|
pg_lo_unlink($db, $oid) or print("pg_lo_unlink() error\n");
|
|
pg_exec ($db, "commit");
|
|
|
|
// more pg_lo_unlink() tests
|
|
// Test without connection
|
|
pg_exec ($db, "begin");
|
|
$oid = pg_lo_create ($db) or print("pg_lo_create() error\n");
|
|
pg_lo_unlink($oid) or print("pg_lo_unlink() error\n");
|
|
pg_exec ($db, "commit");
|
|
|
|
// Test with string oid value
|
|
pg_exec ($db, "begin");
|
|
$oid = pg_lo_create ($db) or print("pg_lo_create() error\n");
|
|
pg_lo_unlink($db, (string)$oid) or print("pg_lo_unlink() error\n");
|
|
pg_exec ($db, "commit");
|
|
|
|
echo "OK";
|
|
|
|
?>
|