Documentation PostgreSQL 8.0.25 | ||||
---|---|---|---|---|
Précédent | Arrière rapide | Chapitre 28. Objets larges | Avance rapide | Suivant |
Ce sont des fonctions côté serveur appelables à partir de SQL et
correspondant à chaque fonction côté client décrite ci-dessus ; en
fait, pour leur grande part, les fonctions côté client sont simplement
des interfaces vers les fonctions équivalentes côté serveur. Celles qui
sont réellement utiles à appeler via des commandes SQL sont
lo_creat
,
lo_unlink
,
lo_import
et
lo_export
.
Voici des exemples de leur utilisation :
CREATE TABLE image ( nom text, donnees oid ); SELECT lo_creat(-1); -- renvoie l'OID du nouvel objet large SELECT lo_unlink(173454); -- supprime l'objet large d'OID 173454 INSERT INTO image (nom, donnees) VALUES ('superbe image', lo_import('/etc/motd')); SELECT lo_export(image.donnees, '/tmp/motd') FROM image WHERE nom = 'superbe image';
Les fonctions lo_import
et lo_export
côté serveur se comportent considérablement différemment de leurs analogues côté
client. Ces deux fonctions lisent et écrivent des fichiers dans le système de
fichiers du serveur en utilisant les droits du propriétaire du serveur de base
de données. Du coup, leur utilisation est restreinte aux superutilisateurs. Au
contraire des fonctions côté serveur, les fonctions d'import et d'export côté
client lisent et écrivent des fichiers dans le système de fichiers du client en
utilisant les droits du programme client. Les fonctions côté client peuvent être
utilisées par tout utilisateur PostgreSQL.
Précédent | Sommaire | Suivant |
Interfaces client | Niveau supérieur | Programme d'exemple |