Bonsoir
je me permet de vous contacter car j'ai une base access stockée dans un fichier temporaire. j'essaye de me connecter à ma base pour ajouter des images
et j'obtient l'erreur
ERROR [HY090] [Microsoft][Pilote ODBC Microsoft Access]Longueur de chaîne ou de mémoire tampon non valide
Voici le code que j'utilise code suivant:
connectionString = "Driver={Microsoft Access Driver (*.mdb)};" + "DBQ=" + tempfile;
OdbcCommand command = new OdbcCommand();
OdbcConnection connection = new OdbcConnection(connectionString);
command.Connection = connection;
connection.Open();
command.CommandText = "INSERT INTO [TableDonnees 1] (Enregistrement, Q17, Q19, Q33) Values (?,?,?,?) ";
command.Parameters.Clear();
OdbcParameter Enregistrement = new OdbcParameter("@Enregistrement", OdbcType.Int, System.Int32.MaxValue );
Enregistrement.Value = numeroEnregistrement;
command.Parameters.Add(Enregistrement);
byte[] fichier1 = (byte[])p.Champs["Q17"];
int lenght = fichier1.Length;
OdbcParameter Q17 = new OdbcParameter("@Q17", OdbcType.VarBinary,System.Byte.MaxValue);
Q17.Value = p.Champs["Q17"];
command.Parameters.Add(Q17);
fichier1 = (byte[])p.Champs["Q19"];
lenght = fichier1.Length;
OdbcParameter Q19 = new OdbcParameter("@Q19", OdbcType.VarBinary,System.Byte.MaxValue);
Q19.Value = p.Champs["Q19"];
command.Parameters.Add(Q19);
fichier1 = (byte[])p.Champs["Q33"];
lenght = fichier1.Length;
OdbcParameter Q33 = new OdbcParameter("@Q33", OdbcType.VarBinary,System.Byte.MaxValue);
Q19.Value = p.Champs["Q33"];
command.Parameters.Add(Q33);
command.ExecuteNonQuery();
J'ai lu quelques articles sur le site mais je n'ai pas beaucoup avancé
Merci pour vos réponses
EDIT : Ajout des balises de code (la coloration syntaxique).
Explications disponibles ICI
Merci d'y penser dans tes prochains messages.
Afficher la suite