日期:2014-05-18  浏览次数:21193 次

Fill 出错.
<FSYH.BaseForm.frmTitle>

private void initControl()
{
  connect = new SqlConnection(ComString.ConnectS);
  DisplayDataSet = new DataSetFSYH();

}

public void DataLoading()
{
 DaList=new SqlDataAdapter(cmdtxt,connect);
 _SqlCommandBuilder = new SqlCommandBuilder(DaList);
 DaList.Fill(DisplayDataSet, TableName);
.....
}

<frmListCloth>是从frmTitle 继承

如果数据库的数据为空,Fill就正常,我在数据库后台手动增加一条记录
Fill就出错,晕
提示Additional information: Failed to enable constraints. One or more rows contain values violating non-null, unique, or foreign-key constraints.
说我的Row违反约束.

xsd 文件直接从数据库拉出来的,也没有改动. 表上有一个字段设了PK







------解决方案--------------------
你的SQL查询语句里有没有 查询PK值栏位,还有就是你查询出来的PK值在表里没有重复的值吧。

------解决方案--------------------
把现在的dataset 删掉,重新建一个。有可能你改过数据库,比如把字段从不允许null改为允许null,而这个更改没有反应在数据集里。
------解决方案--------------------
估计是你生成dataset后有修改了数据库的约束 导致系统认为你的数据违反了约束 具体那个就不知道了
------解决方案--------------------
同意4楼