Précédent   Forum des professionnels en informatique > Bases de données > PostgreSQL
PostgreSQL Forum PostgreSQL. Avant de poster -> F.A.Q PostGreSQL Tutoriels PostGreSQL
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 20/02/2007, 09h24   #1
Membre du Club
 
Inscription : décembre 2006
Messages : 213
Détails du profil
Informations forums :
Inscription : décembre 2006
Messages : 213
Points : 67
Points : 67
Par défaut images postgre et open office

Bonjour,

J'utilise postgreSQL sous winXP, je souhaite stocker des images grâce à la fonction :
Code :
lo_import('chemin/vers/fichier')
dans un champ de type oid nommé image
J'ai lu qu'on peut utiliser open office pour visualiser les images stockées dans postgre. Cependant lorsque j'affiche dans open office les données de ma table, j'obtiens dans le champ image la valeur de l'oid et non l'image.

J'utilise un lien odbc

Merci d'avance pour votre aide.
jonathan1 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/02/2007, 10h06   #2
Expert Confirmé
 
Homme
Inscription : septembre 2006
Messages : 2 291
Détails du profil
Informations personnelles :
Sexe : Homme

Informations forums :
Inscription : septembre 2006
Messages : 2 291
Points : 2 738
Points : 2 738
Citation:
Envoyé par jonathan1
Bonjour,

J'utilise postgreSQL sous winXP, je souhaite stocker des images grâce à la fonction :
Code :
lo_import('chemin/vers/fichier')
dans un champ de type oid nommé image
J'ai lu qu'on peut utiliser open office pour visualiser les images stockées dans postgre. Cependant lorsque j'affiche dans open office les données de ma table, j'obtiens dans le champ image la valeur de l'oid et non l'image.

J'utilise un lien odbc

Merci d'avance pour votre aide.
…parce que OpenOffice ne sait pas que les blobs sont stockés dans une table système et que ce qui est dans la table "utilisateur" est l'oid du premier chunk de l'image dans cette table système…
en plus les blobs sont stockés sont formes de "pages" (chunks) … (=> il faut réassembler les chunks pour avoir l'image…)

à moins que quelqu'un ait fait un plug-in pour qu'OpenOffice comprenne cette méthode de stockage particulière à PostgreSQL, il faudrait sans doute mieux stocker les images sous forme de "bytea"…
JeitEmgie est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/02/2007, 10h16   #3
Membre du Club
 
Inscription : décembre 2006
Messages : 213
Détails du profil
Informations forums :
Inscription : décembre 2006
Messages : 213
Points : 67
Points : 67
Merci pour cette réponse, je vais essayer.

J'espère que je peut utiliser la fonction lo_import vers un champ de type bytea.

Apparemment non.

Je ne sais pas trop comment faire pour insérer l'image dans ma table.
jonathan1 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/02/2007, 11h01   #4
Expert Confirmé
 
Homme
Inscription : septembre 2006
Messages : 2 291
Détails du profil
Informations personnelles :
Sexe : Homme

Informations forums :
Inscription : septembre 2006
Messages : 2 291
Points : 2 738
Points : 2 738
Citation:
Envoyé par jonathan1
Merci pour cette réponse, je vais essayer.

J'espère que je peut utiliser la fonction lo_import vers un champ de type bytea.

Apparemment non.

Je ne sais pas trop comment faire pour insérer l'image dans ma table.
Vous devez lire le fichier en mémoire, et exécuter un query update ou insert avec "escape" des bytes :

http://www.postgresql.org/docs/curre...ibpq-exec.html

pour des programmes en C,
si vous utilisez PHP voir pg_escape_bytea, etc.…
JeitEmgie est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/02/2007, 12h07   #5
Membre du Club
 
Inscription : décembre 2006
Messages : 213
Détails du profil
Informations forums :
Inscription : décembre 2006
Messages : 213
Points : 67
Points : 67
Merci pour vos réponses,

Le développement lié au SGBD m'intéresse cependant je ne suis pas développeur, à l'instar du nom du site, et encore moins en language C.

Citation:
Vous devez lire le fichier en mémoire, et exécuter un query update ou insert avec "escape" des bytes :

http://www.postgresql.org/docs/curre...ibpq-exec.html

pour des programmes en C,
Comment faire le lien entre un "interpreteur" C et postgreSQL ?

Dans open office, les macros ne peuvent pas êtres écrites en C...

jonathan1 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 04h30.


 
 
 
 
Partenaires

Hébergement Web