繁体   English   中英

在Datagridview中插入时出错

[英]Error with Insert in Datagridview

我有一个带有“Code”列的usersdataTable我设置为PK并在MySql DB中自动递增“true”。

我希望用户在数据网格视图上填写名字,姓氏,用户名等的值,但不能输入代码值。

我有这个代码用于更新/插入:

private void usersBindingNavigatorSaveItem_Click(object sender, EventArgs e)
{
    try
    {
        if (dgvUsers.RowCount > 0)
        {
            for (int i = 1; i <= dgvUsers.RowCount; i++)
            {
                var code = dgvUsers.Rows[i].Cells[0].Value.ToString();

                if (code == string.Empty)
                {
                    // add users                         
                    this.usersTableAdapter.Insert(
                        dgvUsers.Rows[i].Cells[1].Value.ToString(),
                        dgvUsers.Rows[i].Cells[2].Value.ToString(),
                        dgvUsers.Rows[i].Cells[3].Value.ToString(),
                        GlobalClass.MD5Hash(dgvUsers.Rows[i].Cells[4].Value.ToString()),
                        DateTime.Now,
                        null
                        );
                }
                else
                {
                    // edit users                         
                    this.usersTableAdapter.Update(this.eko_payrollDataSet.users);
                }
            }
        }

        MessageBox.Show("Details Updated Successfully");
    }
    catch (Exception ex)
    {
        MessageBox.Show(ex.Message);
    }
}     

表结构:

Code      int        NN      PK   Autoincrement
firstName Varchar    NN
lastName  Varchar    NN
userName  Varchar    NN
password  varchar    NN
created   datetime   NN
modified  datetime   Null?

我将datagridview从创建绑定源的数据集拖到表单中。 当我按+按钮添加新行并完成输入值后,当我将光标移动到另一行或尝试在此下面添加一行时,我得到NoNullAllowedExeption for column CodeNoNullAllowedExeption for column Code

我需要做些什么来解决这个问题? 我没有添加会导致此问题的验证代码。

我在这里遇到了同样的问题http://www.databaseforum.info/5/857494.aspx

当您的PK是自动增量列时,DataSet中的关联列应具有正确的AutoIncrement和AutoIncrementSeed,否则您应该能够在数据集设计器中设置它们。

这是一个类似于你的问题,看看你是否能找到有用的东西。

自动增量值功能于自动生成

我认为你的问题很少,你可以举一个例子,或者把数据集/数据表和gridview的所有属性放在一起。

祝好运。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM