Bonjour,
Dans une table IB possedant un champ image déclaré en BLOB SUB_TYPE 0 comment avec un TIBQUERY mettre à jour ce champ avec une nouvelle image passée dans un TMEMORYSTREAM ?
Un exemple de code source serait bien venu
Merci
Bonjour,
Dans une table IB possedant un champ image déclaré en BLOB SUB_TYPE 0 comment avec un TIBQUERY mettre à jour ce champ avec une nouvelle image passée dans un TMEMORYSTREAM ?
Un exemple de code source serait bien venu
Merci
Comment écrire la requete telle que
Par quoi remlacer les ???
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 'UPDATE MaTable SET MonChampBlob='+???+' WHERE MyPrimaryKey='+IntToStr(value)
Salut
Je passerais par un paramètre, c'est ce qui me semble le plus simple:
Avec MS ton MemoryStream.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 with IBquery1 do begin SQL.Clear; SQL.Add('UPDATE MaTable'); SQL.Add('SET MonChampBlob = :MonBlob'); SQL.Add('WHERE MyPrimaryKey = ' + IntToStr(value)); ParamByName('MonBlob').LoadFromStream(MS, ftBlob); Prepare; ExecSQL; Close; end;
Je n'ai pas testé, mais ça devrait le faire.
@+ Claudius
Je pense que cela fonctionne. En tous cas je n'ai pas eu d'erreur. Il faut maintenant que je vérifie en allant lire ce Blob.
Je te tiens au courant
Je viens de vérifier celà fonctionne
Puisque tu semble bien connaître IB j'ai un problème avec les champs de type NUMERIC(5,2) ou autres dimensions. Quand je rentre un single <0 je déclenche systématiquement l'erreur :
EIBInterBaseError avec le message 'arithmetic exception, numeric overflow, or string truncation.
J'ai vérifié si j'entre abs(MonSingle) je n'ai plus l'erreur
Si tu savais comment corriger le problème ce serait super
Encore mille merci
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager