Bonjour;
J'ai créé une table access qui contient un champ image tel quePuis j'ai créé une procedure stockée telle que
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 req:= 'CREATE TABLE NOMINAL (' + ' NOMINAL_NO INTEGER, ' + // divers champs ' NOMINAL_IMAGE IMAGE NOT NULL, ' + // d'autres champs ')'; ADOCommand1.CommandText := req; ADOCommand1.Execute;J'ai utilisé la procédure stockée telle que
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 req:= 'CREATE PROC procNominalAddItem( NominalNo INTEGER, '+ // divers champs NominalImage IMAGE, '+ // d'autres champs ' )'+ 'AS INSERT INTO NOMINAL (NOMINAL_NO, '+ // divers champs 'NOMINAL_IMAGE, '+ // d'autres champs ')'+ 'Values (NominalNo,'+ // divers champs 'NominalImage,'+ // d'autres champs ');'; ADOCommand1.CommandText := req; ADOCommand1.Execute;Cela a très bien fonctionné puisqu'en examinant ma table sous Acces le champ NOMINAL_IMAGE contient une donnée binaire signalée "n'est pas vide" au bouton droit.
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
22 ADOStoredProc2.ConnectionString:= Format(_ConnString,[_UserName,_PassWord,MDBFile]); ADOStoredProc2.ProcedureName:= 'procNominalAddItem'; ADOStoredProc2.Parameters.Clear; for k:=0 to 20 do begin ADOStoredProc2.Parameters.AddParameter; ADOStoredProc2.Parameters[k].DataType:= ftString; ADOStoredProc2.Parameters[k].Direction:= pdInput; case k of 0: begin ADOStoredProc2.Parameters[k].Name:= 'NominalNo'; ADOStoredProc2.Parameters[k].Value:= NominalNo; end; // divers champs 4: begin ADOStoredProc2.Parameters[k].Name:= 'NominalImage'; ADOStoredProc2.Parameters[k].Assign(Rec.Image); end; // d'autres champs end; ADOStoredProc2.Prepared:= true; ADOStoredProc2.ExecProc;
Mon problème :
Comment avec les composants ADO récupérer l'image dans un bitmap ?
Un exemple de code serait bienvenu
Merci à tous les forumers
Partager