数据库Name列的设置截图:某条记录的Name为:我们都是好
提示错误代码:this.employeeTableAdapter.Fill(this.filmManagerDataSet.Employee);
截图:但是把“好”字去掉就可以了,试了几组数据,发现Name的长度不能超过4,英文“alice”都不行,而“alic”就可以了,可是明明Name类数据类型的长度是30阿求各位大神指导阿!还有Name明明设的不能为空,但是就算是空也能把该条记录插入到数据库,而其他不能为空的列是正常的

解决方案 »

  1.   

    感觉你的顺序还是字段搞错了,你检查下是不是添加的是sex。
      

  2.   

    顺序没有错阿,检查过了,添加数据时,如果Textbox框中的字符长度大于4,还是能正确加到数据库中,但是更新数据集时this.employeeTableAdapter.Fill(this.filmManagerDataSet.Employee);还是报相同的错误,纠结了一下午了阿
      

  3.   

    窗体截图:窗体load代码:
     private void Employees_Load(object sender, EventArgs e)
            {
                // TODO: 这行代码将数据加载到表“filmManagerDataSet.Employee”中。您可以根据需要移动或移除它。
                this.employeeTableAdapter.Fill(this.filmManagerDataSet.Employee);
            }
    其中姓名后的文本框数据绑定到Name,截图:数据库该表截图:把第5条记录删掉就能加载该窗体,或者把第5条的Name改为“我们都是”也可以加载该窗体
      

  4.   

    窗体截图:窗体load代码:
     private void Employees_Load(object sender, EventArgs e)
            {
                // TODO: 这行代码将数据加载到表“filmManagerDataSet.Employee”中。您可以根据需要移动或移除它。
                this.employeeTableAdapter.Fill(this.filmManagerDataSet.Employee);
            }
    其中姓名后的文本框数据绑定到Name,截图:
    数据库该表截图:提示
    this.employeeTableAdapter.Fill(this.filmManagerDataSet.Employee);这句有误:把第5条记录删掉就能加载该窗体,或者把第5条的Name改为“我们都是”也可以加载该窗体
      

  5.   

    用dataset了吗?
    使用强类型的dataset这种错误的确会发生!
    原因好象是多方面的,
    1.在创建DataSet中的Adapter时,第一个方法即GetData和后续创建的方法要保持一致,
    也就是说select语句的Where前要保持一致,
    2.在创建DataSet中的Adapter时,也有主键,一般要和数据表保持一致!!
      

  6.   

    是直接textbox属性中数据绑定到该表中的Name,这样的话是用的TableAdapter和DataTable