Bonjour tout le monde;
J'ai une application qui doit manipuler des images pour chaque enregistrement d'une table.
Je n'arrive pas à sauvegarder ni à restaurer les images dans les champs correspondants.
Quelqu'un peut m'aider?
Merci.
Version imprimable
Bonjour tout le monde;
J'ai une application qui doit manipuler des images pour chaque enregistrement d'une table.
Je n'arrive pas à sauvegarder ni à restaurer les images dans les champs correspondants.
Quelqu'un peut m'aider?
Merci.
Bonjour,
Deux écoles s'affrontent au sujet des images : les stocker ou non dans la Base . Donc Blobs ou Varchar contenant un chemin .
Ceci dit tu ne nous indique pas quel langage est utilisé .
Je travail avec Delphi 2009, Firebird bien sure.
Le sgbd stock les images dans la base ou ailleurs ça nous est égale, ce qui nous intéresse c'est que chaque enregitrement d'une table par exemple "personnes" doit contenir une image qui peut être récupérée par une DBImage.
La réponse se trouve plus dans le forum Delphi que celui de Firebird , j'y ai dénombré au moins une dizaine de discussion sur le sujet et il y a une FAQ également
http://delphi.developpez.com/faq/?pa...ichierdansblob
Le choix du stockage ou non dans la base se fera sur le nombre d'images et du format de ces dernières (JPG,BMP etc...)
Je te remercie beaucoup cher ami; je vais jetais un coup d’œil.
:ccool:
Mais c'est pas évident!!!
Est ce n'est pas possible de lier des contrôles image directement vers des champs blob pour récupérer les images? en fin comme d'habitude ??? :calim2: :calim2: :calim2:
Je veux poser un contrôle DBImage, le lier vers un champ de la table puis dérouler les lignes de la table et pour chaque ligne, le contrôle image affiche le contenu correspondant.
Quels composants d’accès a la base de données utilise-tu et quel est le type de cette colonne Image dans Firebird?
Je ne savais pas que ça diffère d'un composant à un autre, mais je dirais que j'utilise le composant TSimpleDataSet (dbexpress) avec bien sure SqlConnexion
Oui, ça le pourrait être.
Tu crée un champ persistant du champ image de ta table, et a partir de celui-ci tu peux insérer une image récupérée a partir d'un nom de fichier, comme ceci par exemple:
Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 procedure TForm.BitBtnAjouterImageClick(Sender: TObject); var StrFileName : String; begin with TOpenPictureDialog.Create(nil) do begin try Filter := 'Fichiers Bitmap (*.bmp)|*.BMP'; if not Execute then Abort; StrFileName := FileName; finally Free; end; end; if NOM_TABLE.State = dsBrowse then NOM_TABLE.Append; NOM_TABLE_NOM_CHAMP.LoadFromFile(StrFileName); end;
Le problème n'est pas : comment charger une image dans la base ou de la charger depuis la base; mais c'est comment liée le champ image de la base avec un composant visuel comme DBImage ou QRDBimage pour qu'il la charge automatiquement. :calim2:
Ta raison 1000%; je n'étais pas très claire au début; pardonne moi mon ami;
Mais ma question est basée non?
Je ne savais pas que les champs images faisaient une particularité, sa me complique la programmation si leur manipulation n'est pas pratique.