Mysql
 sql >> Base de données >  >> RDS >> Mysql

valeur entière incorrecte de l'exception mysql :'@column' pour la colonne de l'application Web asp.net

Deux erreurs.

Premièrement :l'espace réservé des paramètres ne doit pas être entouré de guillemets simples. Sinon, ils deviennent des chaînes littérales et ne sont plus reconnus

Deuxième :AddWithValue prend deux paramètres. Le premier est le nom du paramètre, le second est la valeur et non le type de base de données.

  MySqlCommand cmd = new MySqlCommand(@"Insert into personal(PAN,PName,Age)
                                       values(@PAN,@PName,@Age)",con);
  cmd.Parameters.AddWithValue("@PAN",panBox.Text);
  cmd.Parameters.AddWithValue("@PName", nameBox.Text);
  cmd.Parameters.AddWithValue("@Age",Convert.ToInt32(ageBox.Text));
  cmd.ExecuteNonQuery();

Bien sûr, cela risque de déclencher une exception si le ageBox est vide. Je ne connais pas vos exigences, mais si le champ Age doit être un nombre valide, un peu de vérification des erreurs pourrait être ajoutée pour éviter les erreurs banales.

 int ageValue;
 if(!Int32.TryParse(ageBox.Text, out ageValue))
 {
     MessageBox.Show("Please type a valid value for Age!");
     return;
 }
 .... insert code follows...