以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  这是怎么回事?  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=24003)

--  作者:woiz
--  发布时间:2012/9/26 16:52:00
--  这是怎么回事?

.NET Framework 版本:2.0.50727.3634
Foxtable 版本:2012.9.28.1
错误所在事件:
详细错误信息:
System.ArgumentException: 不能启用此约束,因为不是所有的值都具有相应的父值。
   在 System.Data.ConstraintCollection.AddForeignKeyConstraint(ForeignKeyConstraint constraint)
   在 System.Data.ConstraintCollection.Add(Constraint constraint, Boolean addUniqueWhenAddingForeign)
   在 System.Data.DataRelationCollection.DataSetRelationCollection.AddCore(DataRelation relation)
   在 System.Data.DataRelationCollection.Add(DataRelation relation)
   在 System.Data.DataRelationCollection.Add(String name, DataColumn parentColumn, DataColumn childColumn)
   在 Foxtable.O11110OO0O1lO10.O1lO10O0l00(String O0l0OOl1O1OO1l1)

 

 

一个旧项目打开之后,删除旧的数据源,增加了新数据源,再打开就这样了


--  作者:狐狸爸爸
--  发布时间:2012/9/26 17:12:00
--  
项目发上来,看看有没有救
--  作者:woiz
--  发布时间:2012/9/26 17:20:00
--  

找到原因了,应该是这样的,我这个项目把外部数据源删除之后,外部表没有删除,也无从删除,所以在增加新数据源后,如果没有增加新的外部表,就会出现这种问题。

 

我想这是系统的一个缺陷吧,删除外部数据源的同时,应该把这个数据源的外部数据表同时都删除,就不会出现以上的现象了

 


--  作者:狐狸爸爸
--  发布时间:2012/9/26 17:21:00
--  

你可以在这里删除:

http://www.foxtable.com/help/topics/1812.htm

 


--  作者:woiz
--  发布时间:2012/9/26 18:10:00
--  

不是不能删除外部表,而是如果删除了外部数据源,应该自动删除该外部数据源中的所有外部表

 

如果不是这样的话,就会出现刚才的错误,而且对于普通用户来说是无法解决的,除非有备份,重新改

 


--  作者:程兴刚
--  发布时间:2012/9/26 18:21:00
--  
删除外部数据源之前,判断是否有隶属于该数据源的外部表,有则提示用户先删除外部表,且不允许删除该数据源,或者询问后再删除,不要自动删除,避免误删!