Foxtable(狐表)用户栏目专家坐堂 → 关联列的数据不能删除


  共有21321人关注过本帖树形打印复制链接

主题:关联列的数据不能删除

帅哥哟,离线,有人找我吗?
lxl
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章
等级:MVP荣誉狐 帖子:858 积分:6071 威望:0 精华:19 注册:2008/9/1 9:13:00
  发帖心情 Post By:2008/10/9 10:31:00 [显示全部帖子]

子表的记录可以随便删除

父表中的记录在子表中没对应数据的时候,可以删除,
但在子表中有对应的记录的时候,则不能删除,否则会造成子表中的记录成"孤儿".

2楼的办法虽然能删除父表记录,但是仍然造成子表中的记录成"孤儿"了
根据实际情况来处理
要么不删除,直接把父表的记录修改正确.(而且确保选中同步更新,子表和父表一起修改)
要么"灭门" 父表 子表的记录全部删除.


另外说明一点无关的:
其实在子表中直接增加记录也可能出现"孤儿".就像石头里面蹦出来的一样.
所以.通常做法是只能在父表中增加关联记录,而不能直接在子表中增加记录.
教程提过这样的方法,代码很简单:
 

DataTables("订单明细").AllowAddNew = False
Tables(
"订单.订单明细").AllowAddNew
= True

这样订单明细就不会出现"孤儿".


 回到顶部
帅哥哟,离线,有人找我吗?
lxl
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章
等级:MVP荣誉狐 帖子:858 积分:6071 威望:0 精华:19 注册:2008/9/1 9:13:00
  发帖心情 Post By:2008/10/9 10:53:00 [显示全部帖子]

像订单明细,必须有一个"父亲"(对应的订单)

但是,也有的另外一种情况,允许出现"孤儿"。举个例子:
“订单表”和“客户表”关联.
父表“客户表”中只储存大客户、批发商、长期客户的信息。其他客户的信息不保存。

那么在子表“订单表”中。有的订单能在父表中找到对应的记录,有的就找不到对应记录(成"孤儿")。
这种情况,添加“孤儿”的时候,只能在子表中直接增加记录了。


 回到顶部