以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  帮忙看下这个错误去哪里找原因?  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=24863)

--  作者:Fotable
--  发布时间:2012/10/25 9:08:00
--  帮忙看下这个错误去哪里找原因?
.NET Framework 版本:2.0.50727.3634
Foxtable 版本:2012.10.22.1
错误所在事件:
详细错误信息:
System.Data.ConstraintException: Failed to enable constraints. One or more rows contain values violating non-null, unique, or foreign-key constraints.
   at System.Data.DataSet.FailedEnableConstraints()
   at System.Data.DataSet.EnableConstraints()
   at System.Data.DataSet.set_EnforceConstraints(Boolean value)
   at System.Data.Common.DataAdapter.Fill(DataTable[] dataTables, IDataReader dataReader, Int32 startRecord, Int32 maxRecords)
   at System.Data.Common.DbDataAdapter.FillInternal(DataSet dataset, DataTable[] datatables, Int32 startRecord, Int32 maxRecords, String srcTable, IDbCommand command, CommandBehavior behavior)
   at System.Data.Common.DbDataAdapter.Fill(DataTable[] dataTables, Int32 startRecord, Int32 maxRecords, IDbCommand command, CommandBehavior behavior)
   at System.Data.Common.DbDataAdapter.Fill(DataTable dataTable)
   at Foxtable.DataTable.Load(Boolean O00l001l)

--  作者:狐狸爸爸
--  发布时间:2012/10/25 9:12:00
--  

将文件发上来看看


--  作者:Fotable
--  发布时间:2012/10/25 9:28:00
--  

        DataTables("任务").loadFilter = "[任务_发布人] = \'" & _username & "\' or [任务_执行人] = \'"& _username &"\'"

        DataTables("任务").load

 

找到了产生错误的语句 就是在 load语句


--  作者:狐狸爸爸
--  发布时间:2012/10/25 9:33:00
--  
做个例子发上来说话
--  作者:Fotable
--  发布时间:2012/10/25 11:30:00
--  

终于找到了错误根源所在,原来和这句代码是没有关系的,执行任意一句load都会出错。但仅限于第一次load。

后来进过50多次 一个上午的实验,终于发现原来和一个关联有关。删除这个关联就不会出错。

锁定错误相关的两个表,把其他所有表删除。在将数据导入到内部数据源实验

终于发现原来有一个关联列运算出来的字符长度,超过了字段规定长度限制,所以报错了。

调整字符的定义长度,解决问题。


--  作者:狐狸爸爸
--  发布时间:2012/10/25 11:50:00
--  
自己动手,能力渐长
--  作者:Fotable
--  发布时间:2012/10/25 11:54:00
--  

不过也太费时间了,

要是有实时的debug模式就好了。