bonjour a tous,
je lis un fichier .log.Je dois ensuite mettre chaque ligne lu dans un base
sql mais j'obtiens un message d'erreur lors de l'execution de la requete:Une
exception non gérée du type 'System.Data.SqlClient.SqlException' s'est
produite dans system.data.dll
D'abord pour avoir plus d'info rajoute ce qui suit :
try { //ton code de modif de base ici } catch (Exception ex) { MessageBox.Show(ex.Message); }
Cela te permettra d'avoir le message d'erreur exacte.
Ensuite :
Systematiquement quand tu as une ligne plein de texte a inserer dans du SQL, et que tu ne maitrise pas le contenu à la place de : insert.Parameters["@lig"].Value=ligne;
En d'autre termes remplace toutes les apostrophes par des apostrophes doubles sinon tu auras une erreur SQL, l'apostrophe etant le délimiteur de texte.
En espérant que cela t'aide. a++
-----Message d'origine----- bonjour a tous, je lis un fichier .log.Je dois ensuite mettre chaque
ligne=lect.ReadLine(); conexsql.Open(); while(ligne!=null) { ecrire(ligne); ligne = lect.ReadLine(); } conexsql.Close();
}
public void ecrire(string ligne) { SqlCommand insert=new SqlCommand
("insert into essai(col)
values(@lig)",conexsql); insert.Parameters.Add
("@lig",SqlDbType.VarChar,150,"col");
insert.Parameters
["@lig"].Value=ligne;
insert.ExecuteNonQuery(); } .
Salut,
D'abord pour avoir plus d'info rajoute ce qui suit :
try
{
//ton code de modif de base ici
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
Cela te permettra d'avoir le message d'erreur exacte.
Ensuite :
Systematiquement quand tu as une ligne plein de texte a
inserer dans du SQL, et que tu ne maitrise pas le contenu
à la place de :
insert.Parameters["@lig"].Value=ligne;
En d'autre termes remplace toutes les apostrophes par des
apostrophes doubles sinon tu auras une erreur SQL,
l'apostrophe etant le délimiteur de texte.
En espérant que cela t'aide.
a++
-----Message d'origine-----
bonjour a tous,
je lis un fichier .log.Je dois ensuite mettre chaque
D'abord pour avoir plus d'info rajoute ce qui suit :
try { //ton code de modif de base ici } catch (Exception ex) { MessageBox.Show(ex.Message); }
Cela te permettra d'avoir le message d'erreur exacte.
Ensuite :
Systematiquement quand tu as une ligne plein de texte a inserer dans du SQL, et que tu ne maitrise pas le contenu à la place de : insert.Parameters["@lig"].Value=ligne;
En d'autre termes remplace toutes les apostrophes par des apostrophes doubles sinon tu auras une erreur SQL, l'apostrophe etant le délimiteur de texte.
En espérant que cela t'aide. a++
-----Message d'origine----- bonjour a tous, je lis un fichier .log.Je dois ensuite mettre chaque
"Cirfain" a écrit dans le message de news: 06bc01c50dd5$66ca3450$ Salut,
D'abord pour avoir plus d'info rajoute ce qui suit :
try { //ton code de modif de base ici } catch (Exception ex) { MessageBox.Show(ex.Message); }
Cela te permettra d'avoir le message d'erreur exacte.
Ensuite :
Systematiquement quand tu as une ligne plein de texte a inserer dans du SQL, et que tu ne maitrise pas le contenu à la place de : insert.Parameters["@lig"].Value=ligne;
En d'autre termes remplace toutes les apostrophes par des apostrophes doubles sinon tu auras une erreur SQL, l'apostrophe etant le délimiteur de texte.
En espérant que cela t'aide. a++
-----Message d'origine----- bonjour a tous, je lis un fichier .log.Je dois ensuite mettre chaque
ligne=lect.ReadLine(); conexsql.Open(); while(ligne!=null) { ecrire(ligne); ligne = lect.ReadLine(); } conexsql.Close();
}
public void ecrire(string ligne) { SqlCommand insert=new SqlCommand
("insert into essai(col)
values(@lig)",conexsql); insert.Parameters.Add
("@lig",SqlDbType.VarChar,150,"col");
insert.Parameters
["@lig"].Value=ligne;
insert.ExecuteNonQuery(); } .
Bonsoir, Tu es sûr pour les apostrophes ? J'étais persuadé que de passer par les parameters dispensait de ce genre de manip.
"Cirfain" <Cirfain@discussions.microsoft.com> a écrit dans le message de
news: 06bc01c50dd5$66ca3450$a601280a@phx.gbl...
Salut,
D'abord pour avoir plus d'info rajoute ce qui suit :
try
{
//ton code de modif de base ici
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
Cela te permettra d'avoir le message d'erreur exacte.
Ensuite :
Systematiquement quand tu as une ligne plein de texte a
inserer dans du SQL, et que tu ne maitrise pas le contenu
à la place de :
insert.Parameters["@lig"].Value=ligne;
En d'autre termes remplace toutes les apostrophes par des
apostrophes doubles sinon tu auras une erreur SQL,
l'apostrophe etant le délimiteur de texte.
En espérant que cela t'aide.
a++
-----Message d'origine-----
bonjour a tous,
je lis un fichier .log.Je dois ensuite mettre chaque
"Cirfain" a écrit dans le message de news: 06bc01c50dd5$66ca3450$ Salut,
D'abord pour avoir plus d'info rajoute ce qui suit :
try { //ton code de modif de base ici } catch (Exception ex) { MessageBox.Show(ex.Message); }
Cela te permettra d'avoir le message d'erreur exacte.
Ensuite :
Systematiquement quand tu as une ligne plein de texte a inserer dans du SQL, et que tu ne maitrise pas le contenu à la place de : insert.Parameters["@lig"].Value=ligne;
En d'autre termes remplace toutes les apostrophes par des apostrophes doubles sinon tu auras une erreur SQL, l'apostrophe etant le délimiteur de texte.
En espérant que cela t'aide. a++
-----Message d'origine----- bonjour a tous, je lis un fichier .log.Je dois ensuite mettre chaque
ligne=lect.ReadLine(); conexsql.Open(); while(ligne!=null) { ecrire(ligne); ligne = lect.ReadLine(); } conexsql.Close();
}
public void ecrire(string ligne) { SqlCommand insert=new SqlCommand
("insert into essai(col)
values(@lig)",conexsql); insert.Parameters.Add
("@lig",SqlDbType.VarChar,150,"col");
insert.Parameters
["@lig"].Value=ligne;
insert.ExecuteNonQuery(); } .
Bonsoir, Tu es sûr pour les apostrophes ? J'étais persuadé que de passer par les parameters dispensait de ce genre de manip.
Cirfain
> Fred à ecrit :
Bonsoir, Tu es sûr pour les apostrophes ? J'étais persuadé que de
passer par les
parameters dispensait de ce genre de manip.
Je n'en sais rien, je ne passe jamais par ce genre de procedé, je fais mes requetes moi-même. Mais dans le cas comme il n'avait pas "trapper" l'erreur avec un try catch, deviner n'est pas simple, j'ai supposé que c'était ça le problème...
A+
> Fred à ecrit :
Bonsoir,
Tu es sûr pour les apostrophes ? J'étais persuadé que de
passer par les
parameters dispensait de ce genre de manip.
Je n'en sais rien, je ne passe jamais par ce genre de
procedé, je fais mes requetes moi-même.
Mais dans le cas comme il n'avait pas "trapper" l'erreur
avec un try catch, deviner n'est pas simple, j'ai supposé
que c'était ça le problème...
Bonsoir, Tu es sûr pour les apostrophes ? J'étais persuadé que de
passer par les
parameters dispensait de ce genre de manip.
Je n'en sais rien, je ne passe jamais par ce genre de procedé, je fais mes requetes moi-même. Mais dans le cas comme il n'avait pas "trapper" l'erreur avec un try catch, deviner n'est pas simple, j'ai supposé que c'était ça le problème...