guyantoinemav
Messages postés2Date d'inscriptionjeudi 14 août 2008StatutMembreDernière intervention16 décembre 2009
-
4 déc. 2009 à 09:46
guyantoinemav
Messages postés2Date d'inscriptionjeudi 14 août 2008StatutMembreDernière intervention16 décembre 2009
-
16 déc. 2009 à 13:09
Bonjour, j'ai un soucis pour insérer des images dans ma base foxpro.
J'ai une application VFP 6 que je veux migrer vers c# en conservant la base de données FoxPro. le code C# semble correcte mais lors de l'insertion j'ai un message d'erreur: "Erreur: ERROR[42000][Microsoft ][ODBC visual Foxpro Driver]: erreur syntaxe"
je voudrais que l'on me donne des explications.
extrait de mon code en C#:
try
{
// Tableau d'octets representant l'image au format jpeg
MemoryStream mstImage = new MemoryStream();
pictureBox1.Image.Save(mstImage, System.Drawing.Imaging.ImageFormat.Jpeg);
Byte[] bytImage = mstImage.GetBuffer();
//création de la connection
OdbcConnection connection = new OdbcConnection();
//chaine de connection (du type "DSN=monDSN)
string chaineDeConnection = "Dsn=basetest";
//affectation de la chaine de connection à la connection
connection.ConnectionString = chaineDeConnection;
//ouverture de la connection
connection.Open();
MessageBox.Show(" Connexion réussi ...");
// Insere l'image dans la base
string requete = "insert into operlogo (idlogo,logo) values(@idlogo,@image)";
OdbcCommand comm = new OdbcCommand(requete, connection);
comm.Parameters.AddWithValue("@idlogo", textbox.Text);
OdbcParameter param = new OdbcParameter("@image", "varbinary");
param.Direction = ParameterDirection.Input;
comm.Parameters.Add(param);
param.Value = bytImage;
comm.ExecuteNonQuery();
connection.Close();
}
michelatoutfox
Messages postés828Date d'inscriptionmardi 5 octobre 2004StatutMembreDernière intervention 7 mai 20131 10 déc. 2009 à 17:29
Bonjour,
je ne l'ai pas vérifié sur odbc derière C#, mais essaies d'utiliser des ? à la place des @ dans la string requete. Normalement, c'est le SGBDR qui doit compiler la string de requète que lui passe l'odbc, et pour VFP, c'est le ? qui repère les paramètres.