尝试保存到SQL数据库时出现参数异常

本文关键字:参数 异常 数据库 保存 SQL | 更新日期: 2023-09-27 17:57:26

无法对DataRow列执行验证。后面的柱子end允许null,但仍在抛出异常。当我尝试在cellNumber.Text中使用null值进行保存时,它不应该引发异常,我尝试使用if语句进行验证,但也不起作用。请帮忙。

private void btnSave_Click(object sender, EventArgs e)
{
    DataRow dr = dt.NewRow();
    dr["FirstName"] = txtFirstName.Text;
    dr["LastName"] = txtLastName.Text;
    dr["Shirt"] = txtShirt.Text;
    dr["Pant"] = txtPant.Text;
    if (dr.IsNull("CellNumber"))
    {
        MessageBox.Show("Please enter Cell number");
    }
    else
    {
        dr["CellNumber"] = txtCellNo.Text; //Argument exception is thrown here
    }
    dr["DueDate"] = txtDueDate.Text;
    dr["Date"] = txtDate.Text;
    dt.Rows.Add(dr);
    try
    {
        da.Update(ds, "Measurement");
    }
    catch (DBConcurrencyException ex)
    {
        MessageBox.Show(ex.Message);
        dt.Clear();
        da.Fill(ds, "Measurement");
    }
    finally 
    { 
        MessageBox.Show("Success");
    }
}

尝试保存到SQL数据库时出现参数异常

您可能检查错了东西。你有这个:

if (dr.IsNull("CellNumber"))
{
    MessageBox.Show("Please enter Cell number");
}
else
{
    dr["CellNumber"] = txtCellNo.Text; 
}
dr["CellNumber"] = txtCellNo.Text;//Argument exception is thrown here

检查txtCellNo.Text的内容而不是dr["CellNumber"]会更有意义。