Impossible de lire un blob

Signaler
Messages postés
27
Date d'inscription
mercredi 19 janvier 2011
Statut
Membre
Dernière intervention
1 novembre 2018
-
Messages postés
27
Date d'inscription
mercredi 19 janvier 2011
Statut
Membre
Dernière intervention
1 novembre 2018
-
Bonjour,
j'ai une base sous Firebird 2.5, gérée par une vieille application, avec une table contenant un champs défini par : MONDOC BLOB SUB_TYPE 0 SEGMENT SIZE 1024
Dans le cadre de migrations, je souhaite exporter certaines données, dont ces blob. Tout est bien extrait sauf les blob, dont la taille apparait toujours à zéro :
- par isql, blobview et blobdump me rendent un fichier vide, et octet_length me rend zéro,
- par sql dans un programme C, le fetch me rend aussi un buffer de taille zéro.
Tout ceci sans erreur. Si je mets un mauvais pointeur, j'ai bien une erreur, logique.
L'application affiche bien les blob (images, PDF, ...) donc ils sont bien là.

Une idée de cette taille à zéro, et de cette impossibilité de les extraire ?
Merci bien.
Jean-Claude

2 réponses

Messages postés
32433
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
12 mai 2021
347
Bonjour,
Il se peut que le programme qui insère les fichiers en BDD applique un algo dessus ( 64encode par exemple... ou de la compression.....)
Au cas où ... peux tu nous fournir le contenu d'un des fichier "blob" contenu dans ta bdd ?

Mais bon, cette question relève d'avantage du fonctionnement de firebird que d'un souci SQL (ce forum traitant des questions relatives au "langage" (les requêtes) SQL ).
Le mieux serait de trouver un forum dédié au fonctionnement de FireBird.
Messages postés
27
Date d'inscription
mercredi 19 janvier 2011
Statut
Membre
Dernière intervention
1 novembre 2018

Merci d'avoir répondu.
Les fichiers stockés sont des JPG, PDF, TXT...
Si j'ouvre le fichier FDB (avec un éditeur de texte), je retrouve bien le contenu de mes fichiers, donc pas de conversion ou autre chose.
Mais le problème est que je n'arrive pas à récupérer les fichiers stockés sous forme de blob, via le SQL. Même blobdump ou blobview ne rendant rien (ni d'erreur), je me disais qu'il y a une subtilité dans l'utiliation des blob (ex. ajouter un décalage au pointeur ? ne prendre que la partie haute ? ....)
J'essayerai côté Firebird, mais je doute qu'il soit en cause.
JC