Visual Studio 2010とMySQLが初めてです。私は従業員を追加することができるフォームを作成しています。しかし、[追加]ボタンをクリックすると、「入力文字列が正しい形式ではありません」というエラーが表示されます。入力文字列の形式が正しくありません
コード:
これは、スクリーンショットである
private void button_adduser_Click(object sender, EventArgs e)
{
string MyConString = "SERVER=localhost;" + "DATABASE=timekeeping;" + "UID=root;" + "PASSWORD=admin;";
MySqlConnection connection = new MySqlConnection(MyConString);
MySqlCommand command = connection.CreateCommand();
command.Connection = connection;
using (MySqlConnection conn = new MySqlConnection(MyConString))
{
connection.Open();
using (MySqlCommand com = connection.CreateCommand())
{
command.CommandText = "insert into users(fname, mname, lname, position, contactnumber, emailadd, birthday, username, password) values(@fname, @mname, @lname, @position, @contactnumber, @emailadd, @birthday, @username, @password)";
command.Parameters.Add(new MySqlParameter("@fname", SqlDbType.VarChar));
command.Parameters.Add(new MySqlParameter("@mname", SqlDbType.VarChar));
command.Parameters.Add(new MySqlParameter("@lname", SqlDbType.VarChar));
command.Parameters.Add(new MySqlParameter("@position", SqlDbType.VarChar));
command.Parameters.Add(new MySqlParameter("@contactnumber", SqlDbType.VarChar));
command.Parameters.Add(new MySqlParameter("@emailadd", SqlDbType.VarChar));
command.Parameters.Add(new MySqlParameter("@birthday", SqlDbType.DateTime));
command.Parameters.Add(new MySqlParameter("@username", SqlDbType.VarChar));
command.Parameters.Add(new MySqlParameter("@password", SqlDbType.VarChar));
command.Parameters["@fname"].Value = addfname.Text;
command.Parameters["@mname"].Value = addmname.Text;
command.Parameters["@lname"].Value = addlname.Text;
command.Parameters["@position"].Value = addposition.Text;
command.Parameters["@contactnumber"].Value = addcontact.Text;
command.Parameters["@emailadd"].Value = addemail.Text;
command.Parameters["@birthday"].Value = addbday.Text;
command.Parameters["@username"].Value = addusername.Text;
command.Parameters["@password"].Value = addpassword.Text;
command.ExecuteNonQuery();
}
}
}
私はすでにあなたの提案を "command.Parameters [" @ birthday "]に書き直すために適用しました。Value = Convert.ToDateTime(addbday.Text);"しかし、まだエラーがあります。 – sean
@schadi:まったく同じエラーが表示されますか?この答えは正しいようです。 – rsbarro
@schadi、「私はまだエラーが発生する」とは言わないでください。代わりにコメントに正確なエラーメッセージを貼り付けてください。 Clairvoyanceはまれなスキルです:-) – Johan