IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Bases de données Delphi Discussion :

[Delphi XE5] FdQuery Blob vide


Sujet :

Bases de données Delphi

  1. #1
    Membre confirmé
    Avatar de alheuredudejeuner
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2005
    Messages
    376
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2005
    Messages : 376
    Points : 632
    Points
    632
    Billets dans le blog
    4
    Par défaut [Delphi XE5] FdQuery Blob vide
    Bonjour,

    Impossible de remonter un blob (PHOTO BLOB SEGMENT SIZE 4096) image dans mon fdquery sur une base firebird 2.5

    le code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    BlobStream := FDQuery1.CreateBlobStream(FDQuery1.FieldByName('PHOTO'),TBlobStreamMode.bmRead);
    ne me remonte qu'un Stream vide.

    Avec les UIB, je n'ai pas ce problème. Je me rappelle avoir joué sur le fetch.

    Quel est la bonne pratique ?

    Cordialement

  2. #2
    Rédacteur/Modérateur

    Avatar de SergioMaster
    Homme Profil pro
    Développeur informatique retraité
    Inscrit en
    Janvier 2007
    Messages
    15 030
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 15 030
    Points : 40 928
    Points
    40 928
    Billets dans le blog
    62
    Par défaut
    Bonjour,

    il faudrait que je revérifie mais voici un code qui semblait fonctionner (ici gabarit était un fastreport .frx mais il y a peu à changer pour une image )
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
     
    var AStream : TStream;
        ABlob : TBlobField;
     begin
     with fdQUnGabarit do
      begin
         ParamByName('NOM').AsString:=Nom;
         Active:=True;
         if not FieldByName('GABARIT').IsNull then
          begin
            ABlob:=FieldByName('GABARIT') as TBlobField;
            AStream:=TStream.Create;
            try
              AStream:=CreateBlobStream(ABlob,bmRead);
              Gabarit.LoadFromStream(AStream);                 // image.picture.loadfromstream(aStream) ? 
            finally
              AStream.Free;
            end;
          end;
         Active:=False;
      end;
    MVP Embarcadero
    Delphi installés : D3,D7,D2010,XE4,XE7,D10 (Rio, Sidney), D11 (Alexandria), D12 (Athènes)
    SGBD : Firebird 2.5, 3, SQLite
    générateurs États : FastReport, Rave, QuickReport
    OS : Window Vista, Windows 10, Windows 11, Ubuntu, Androïd

  3. #3
    Membre confirmé
    Avatar de alheuredudejeuner
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2005
    Messages
    376
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2005
    Messages : 376
    Points : 632
    Points
    632
    Billets dans le blog
    4
    Par défaut oups ...
    Bonjour

    Merci Sergio,
    Ta réponse m'a aidé.
    Le test en debug
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    FieldByName('PHOTO').IsNull
    me renvoyait true.

    Je n'était pas sur la bonne base.

    Cordialement

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Delphi XE5 UIB vers Firedac blob image
    Par alheuredudejeuner dans le forum Bases de données
    Réponses: 1
    Dernier message: 16/02/2017, 10h32
  2. Blob vide avec BDE 32 bit mais remplit en 16 bit ?
    Par Eylir dans le forum Bases de données
    Réponses: 0
    Dernier message: 10/10/2012, 18h00
  3. Test Blob vide
    Par od.dev dans le forum SQL
    Réponses: 3
    Dernier message: 07/06/2011, 19h20
  4. Test BLOB vide erreur (SQL Manager 2005)
    Par Fred29 dans le forum Outils
    Réponses: 6
    Dernier message: 11/04/2008, 10h19
  5. [IB7][Delphi 7] Les Blobs
    Par kmsoft dans le forum Connexion aux bases de données
    Réponses: 1
    Dernier message: 20/11/2004, 18h13

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo