Mise à Jour

Signaler
Messages postés
345
Date d'inscription
lundi 15 mars 2004
Statut
Membre
Dernière intervention
13 mai 2011
-
Messages postés
3
Date d'inscription
jeudi 23 juin 2005
Statut
Membre
Dernière intervention
10 juillet 2005
-
Bonjour, je dois insérer ou mettre a jour ma base de données Mysql a partir de mon application C#.

Donc j'ai fais ceci :

string MySQLCmd2 = "select * from `reseaux` WHERE `ip`='1.1.1.1'";
MyAdapter.SelectCommand = new MySqlCommand(MySQLCmd2, Connection);
MyAdapter.Fill(ds2);

foreach ( DataRow dtRow in ds2.Tables[0].Rows)
{
MessageBox.Show("==>" + dtRow.ToString());
string dt1 = (string)dtRow["ip"];
MessageBox.Show("==>" + dt1);
if(dt1==string.Empty)
{
MessageBox.Show("dt1 n'existe pas");
string MySQLCmd = "INSERT INTO `reseaux` (`ip`,`compte` , `utilisateur`) VALUES ('1.1.1.1','" + Environment.UserName + "','" + VotreNom.Text + "')";
MySqlCommand cmd = new MySqlCommand(MySQLCmd, Connection);
cmd.ExecuteNonQuery();
}

else
{
MessageBox.Show("dt1 existe");
string MySQLCmd = "UPDATE `reseaux` SET `utilisateur`='" + VotreNom.Text + "'";
MySqlCommand cmd = new MySqlCommand(MySQLCmd, Connection);
cmd.ExecuteNonQuery();
}
}

Le problème :
Si l'IP 1.1.1.1 est déjà dans la bdd pas de problème, je passe bien dans la boucle else et la mise a jour se fait sans problème.
Par contre, si l'IP 1.1.1.1 n'est pas dans ma bdd, je ne passe dans aucune des deux boucle (if ou else). J'ai essayé de debug en mettant des points d'arret mais en vain. Merci si vous avez des idées!!!

PS : COQ, a l'aide ;)

1 réponse

Messages postés
3
Date d'inscription
jeudi 23 juin 2005
Statut
Membre
Dernière intervention
10 juillet 2005

Ton if(dt1==string.Empty) ne test pas si dt1 est déja présente dans ta base mais juste si la chaine de caractere dt1 n'est pas null !!!