日期:2014-05-20  浏览次数:21062 次

在子表增加记录时提示“要求在父表中存在子键值”是什么意思
sql   server   中有一父子关系表,在前端用代码邦定表格设置关系,前后移动巳有的记录正常,在新增一条记录时当在子表邦定的datagridview中增加第二条记录即向下移动一行时就会出现一个有红X的大框提示”system.data.invalidconstrainException:ForeignKeyConstraint   fahuorelation   要求在父表中存在子键值(1)... "
查阅众多资料不知所以,请大侠请教?



------解决方案--------------------
父子表是有联系的,在子表增加一行,父表也应该增加相应的一行
------解决方案--------------------
lz的问题,我也问过

最后没有找到希望的解决方法

只能把业务逻辑修改

例如 用两个按钮

button1增加主表记录

butoon2增加从表记录

这是我的妥协方法,呵呵 lz如果着急可以先这样用

希望有别人能过找到更好的办法

原文地址

http://community.csdn.net/Expert/topic/4840/4840363.xml?temp=.0551874
------解决方案--------------------
父子表操作有两种 方法
A:使用DataSet和dataRelation 更新数据时会自动给子表对应字段加上父表的值,使用sqldataadpter 的insertcommnad,updatedcommand等来更新.
B:先读取父子,再根据父表去读取子表,新增记录时,指定子表对应字段的值为父表的值,如父子表同时新增,取父表的id(自动增长)可用一个方法来取,然后给子表。
更新时子表SQL指定用Foreach取得+父子更新....