Hello,
je travaille sous Delphi 6, Oracle 9i (si nécessaire j'ai D7 à ma disposition). Je dispose d'une architecture 3 tiers Client - Serveur - BDD.
J'ai un serveur qui attaque ma base de données, avec :
TADOConnection
TADOQuery (requête insert)
TDatasetProvider
le tout relié ensemble comme il faut.
J'ai un client qui lui attaque le serveur, avec :
TClientDataset
qui pointe sur le DatasetProvider du serveur
Mon but est, que mon client appelle mon serveur pour insérer une image/fichier/etc dans ma base. La communication client serveur se fait correctement.
Mon problème vient du fait que lorsque j'appelle la méthode Execute sur mon ClientDataset coté client, avec les paramètres bien renseignés (type ftBlob pour le paramètre de l'image, chargé avec la méthode LoadFromFile (chemin, ftBlob)), j'ai une magnifique erreur :
ORA-01461 Une valeur 'LONG' ne peut être liée que dans une colone de type 'LONG'.
J'ai testé la même configuration avec du BDE (coté serveur) ca marche nickel.
J'ai testé la même chose en déportant les composants ADO coté client (sans passer par le ClientDataset), ADOConnection et ADOQuery, avec les paramètres de la Query renseignés par le client, ca marche aussi...
Vala où j'en suis et je n'ai plus tellement de pistes
Si vous avez des infos trucs etc, je suis preneur, merci d'avance.
PS : je suis obligé (pour des raisons exterieures) d'utiliser ADO pour attaquer ma base.
Partager