pg_lo_create
(PHP 4 >= 4.2.0, PHP 5)
pg_lo_create — Crée un objet de grande taille PostgreSQL
Description
pg_lo_create() crée un objet de grande taille
et retourne son OID. Les modes d'accès PostgreSQL INV_READ
,
INV_WRITE
et INV_ARCHIVE
ne sont pas
supportés : l'objet peut toujours être créé avec
des droits d'accès en lecture et écriture. Le mode
INV_ARCHIVE
a été supprimé des bases PostgreSQL (version 6.3 et ultérieur).
Pour utiliser un objet de grande taille, il est nécessaire de le faire dans une transaction.
Au lieu d'utiliser l'interface d'objet de grande taille ((qui n'a aucun contrôle d'accès et qui est encombrant à utiliser), essayez la colonne de type bytea de PostgreSQL et pg_escape_bytea().
Note:
Auparavant, cette fonction s'appelait pg_locreate().
Liste de paramètres
-
connection
-
La ressource de connexion de la base de données PostgreSQL. Lorsque
connection
n'est pas présent, la connexion par défaut est utilisée. La connexion par défaut est la dernière connexion faite par pg_connect() ou pg_pconnect(). -
object_id
-
Si le paramètre
object_id
est fourni, la fonction essayera de créer un objet large avec cet identifiant, sinon, un identifiant d'objet disponible sera assigné par le serveur. Ce paramètre a été ajouté en PHP 5.3 et cette fonctionnalité est apparue avec PostgreSQL 8.1.
Valeurs de retour
Un objet large OID ou FALSE
en cas d'erreur.
Historique
Version | Description |
---|---|
5.3.0 |
Le paramètre optionnel |
Exemples
Exemple #1 Exemple avec pg_lo_create()
<?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, "données objet de grande taille"); pg_lo_close($handle); pg_query($database, "commit"); ?>