pg_lo_create
(PHP 4 >= 4.2.0, PHP 5, PHP 7)
pg_lo_create - 创建一个大对象
描述
int pg_lo_create ([ resource $connection [, mixed $object_id ]] )
int pg_lo_create ( mixed $object_id )
pg_lo_create()创建一个大对象并返回大对象的OID。PostgreSQL访问模式INV_READ
,INV_WRITE
并且INV_ARCHIVE
不受支持,对象始终具有读取和写入权限。INV_ARCHIVE
已经从PostgreSQL本身(版本6.3及以上版本)中删除。
要使用大对象接口,必须将其放在事务块中。
使用PostgreSQL的bytea列类型和pg_escape_bytea()来代替使??用大对象接口(它没有访问控制并且使用起来很麻烦)。
注意:这个函数被称为pg_locreate()。
参数
connection
PostgreSQL数据库连接资源。如果connection
不存在,则使用默认连接。默认连接是pg_connect()或pg_pconnect()所做的最后一个连接。
object_id
如果object_id
给出该函数将尝试使用此ID创建一个大对象,否则由服务器分配一个空闲对象ID。该参数是在PHP 5.3中添加的,并且依赖于PostgreSQL 8.1中首次出现的功能。
返回值
大对象OID或FALSE
出错。
更新日志
版 | 描述 |
---|---|
5.3.0 | 添加了可选的object_id。 |
例子
Example #1 pg_lo_create() example
<?php
???$database?=?pg_connect("dbname=jacarta");
???pg_query($database,?"begin");
???$oid?=?pg_lo_create($database);
???echo?"$oid\n";
???$handle?=?pg_lo_open($database,?$oid,?"w");
???echo?"$handle\n";
???pg_lo_write($handle,?"large?object?data");
???pg_lo_close($handle);
???pg_query($database,?"commit");
?>
← pg_lo_close
pg_lo_export →
本文档系腾讯云开发者社区成员共同维护,如有问题请联系 cloudcommunity@tencent.com