Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

valor inteiro incorreto da exceção mysql:'@column' para coluna do aplicativo web asp.net


Dois erros.

Primeiro:O espaço reservado para parâmetros não deve ser colocado entre aspas simples. Caso contrário, eles se tornam strings literais e não são mais reconhecidos

Segundo:AddWithValue recebe dois parâmetros. O primeiro é o nome do parâmetro, o segundo é o valor e não o tipo de banco de dados.
  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();

Claro que isso corre o risco de lançar uma exceção se o ageBox está vazia. Não conheço seus requisitos, mas se o campo Idade precisar ser um número válido, um pouco de verificação de erros poderá ser adicionado para evitar erros banais.
 int ageValue;
 if(!Int32.TryParse(ageBox.Text, out ageValue))
 {
     MessageBox.Show("Please type a valid value for Age!");
     return;
 }
 .... insert code follows...