读书人

异常“未能启用约束。一行或多行中包含

发布时间: 2012-09-03 09:48:39 作者: rapoo

错误“未能启用约束。一行或多行中包含违反非空、唯一或外键约束的值”如何来解决?
在数据集中建A、B两个表,A表的一个字段是B表的一个外键,然后在水晶报表中要显示两个表的部分信息,
运行时出现如下错误详细信息:


用户代码未处理 System.Data.ConstraintException
Message="未能启用约束。一行或多行中包含违反非空、唯一或外键约束的值。"
Source="System.Data"
StackTrace:
在 System.Data.DataSet.FailedEnableConstraints()
在 System.Data.DataSet.EnableConstraints()
在 System.Data.DataSet.set_EnforceConstraints(Boolean value)
在 System.Data.DataTable.EndLoadData()
在 System.Data.Common.DataAdapter.FillFromReader(DataSet dataset, DataTable datatable, String srcTable, DataReaderContainer dataReader, Int32 startRecord, Int32 maxRecords, DataColumn parentChapterColumn, Object parentChapterValue)
在 System.Data.Common.DataAdapter.Fill(DataSet dataSet, String srcTable, IDataReader dataReader, Int32 startRecord, Int32 maxRecords)
在 System.Data.Common.DbDataAdapter.FillInternal(DataSet dataset, DataTable[] datatables, Int32 startRecord, Int32 maxRecords, String srcTable, IDbCommand command, CommandBehavior behavior)
在 System.Data.Common.DbDataAdapter.Fill(DataSet dataSet, Int32 startRecord, Int32 maxRecords, String srcTable, IDbCommand command, CommandBehavior behavior)
在 System.Data.Common.DbDataAdapter.Fill(DataSet dataSet, String srcTable)
在 minzu.Page_Load(Object sender, EventArgs e) 位置 f:\CrystalReportsWebSite_hr\minzu.aspx.cs:行号 32
在 System.Web.Util.CalliHelper.EventArgFunctionCaller(IntPtr fp, Object o, Object t, EventArgs e)
在 System.Web.Util.CalliEventHandlerDelegateProxy.Callback(Object sender, EventArgs e)
在 System.Web.UI.Control.OnLoad(EventArgs e)
在 System.Web.UI.Control.LoadRecursive()
在 System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)


[解决办法]

探讨
如楼上所说,是数据出了问题。
建议你在sql填充的时候处理下 空 和 会导致主键重复的情况

PS:楼上的这么快就升两星星了啊,厉害~~

[解决办法]
这证明的主外键设置得有问题。。。

读书人网 >asp.net

热点推荐