在命令执行期间遇到致命错误。在C#中,当我使用插入到
当我完成编辑项目并单击“保存”时,会导致错误。错误是:在命令执行期间遇到致命错误。在C#中,当我使用插入到,c#,mysql,insert,C#,Mysql,Insert,当我完成编辑项目并单击“保存”时,会导致错误。错误是:在命令执行过程中遇到致命错误 详细的信息会很好 private void btnSave_Click(object sender, EventArgs e) { if (textBox1.Text == "") { MessageBox.Show("VIN is Empty!", "Don't leave it blank!", MessageBoxButtons.OK, M
在命令执行过程中遇到致命错误
详细的信息会很好
private void btnSave_Click(object sender, EventArgs e)
{
if (textBox1.Text == "")
{
MessageBox.Show("VIN is Empty!", "Don't leave it blank!", MessageBoxButtons.OK, MessageBoxIcon.Exclamation, MessageBoxDefaultButton.Button1);
textBox1.Focus();
}
else if (MessageBox.Show("Do Want To Save it?", "Update", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button2) == DialogResult.Yes)
{
Initialize();
connection.Open();
MySqlCommand cmd = new MySqlCommand();
cmd.CommandText = "Insert Into registration_form (VIN, Lst_name, Frst_name, Mddle_name, Sx, Hght, Wght, Address, Occupation, Brthday, Plceof_Birth, Cvl_Status, Nmeof_Father, Nmeof_Mother, Citizenship)" +
"Values (@VIN, @Lst_name, @Frst_name, @Mddle_name, @Sx, @Hght, @Wght, @Address, @Occupation, @Brthday, @Plceof_Birth, @Cvl_Status, @Nmeof_Father, @Nmeof_Mother, @Citizenship)";
cmd.Connection = connection;
cmd.Parameters.Add("@VIN",MySqlDbType.VarChar).Value=textBox1.Text.ToUpper();
cmd.Parameters.Add("@Lst_name",MySqlDbType.VarChar).Value=textBox2.Text.ToUpper();
cmd.Parameters.Add("@Frst_name",MySqlDbType.VarChar).Value=textBox4.Text.ToUpper();
cmd.Parameters.Add("@Mddle_name",MySqlDbType.VarChar).Value=textBox3.Text.ToUpper();
cmd.Parameters.Add("@Sx",MySqlDbType.VarChar).Value=comboBox1.Text.ToUpper();
cmd.Parameters.Add("@Hght",MySqlDbType.VarChar).Value=textBox6.Text.ToUpper();
cmd.Parameters.Add("@Wght",MySqlDbType.VarChar).Value=textBox7.Text.ToUpper();
cmd.Parameters.Add("@Address",MySqlDbType.VarChar).Value=textBox8.Text.ToUpper();
cmd.Parameters.Add("@Occupation",MySqlDbType.VarChar).Value=textBox9.Text.ToUpper();
cmd.Parameters.Add("@Brthday",MySqlDbType.VarChar).Value=dateTimePicker1.Text.ToUpper();
cmd.Parameters.Add("@Plceof_Birth",MySqlDbType.VarChar).Value=textBox11.Text.ToUpper();
cmd.Parameters.Add("@Cvl_Status",MySqlDbType.VarChar).Value=textBox5.Text.ToUpper();
cmd.Parameters.Add("@Nmeof_Father",MySqlDbType.VarChar).Value=textBox10.Text.ToUpper();
cmd.Parameters.Add("@Nmeof_Mohter",MySqlDbType.VarChar).Value=textBox12.Text.ToUpper();
cmd.Parameters.Add("@Citizenship", MySqlDbType.VarChar).Value = textBox13.Text.ToUpper();
MessageBox.Show("Record has been successfully saved", "Saved");
cmd.ExecuteNonQuery();
}
FillListView();
}
}
}
设置此选项以解决您的问题:
cmd.CommandTimeout = 5000000
除了你可能犯的错误。不希望在实际保存成功消息之前显示它。您可能希望发布有关错误的一些详细信息…此外,您在参数添加行中拼写错误了参数Nmeof_MONTER,它显示为“Nmeof_mohter”-可能是问题所在。这就是为什么我喜欢用真实的、描述性的词语来描述这类事情:)已经解决了。哈哈哈!我真的把东西拼错了。xD如何使用MySQL更新listview中的记录?人们对元音有什么看法?为什么
@First\u name
比@First\u name
好得多?或者是@Frost\u name
,还是@Forest\u name
?谁能确定呢?这很有效,但你愿意解释一下吗CommandTimeout
表示秒数,因此您将超时时间设置为将近25天。为什么会这样?为什么我们必须将超时设置为24.8天?此外,当试图将其设置为5000000时,在手表中检查显示其限制为2147483。您的解决方案有效,但我不理解。@BenRecord基本上,该操作需要的时间超过指定的超时时间,并返回这样一个异常。这就是我的假设,所以增加超时时间会给命令更多的工作时间。您可以将超时设置为您想要的或认为合理的任何值。