以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 修改关联父表记录,子表记录怎么样才能自动修改吗? (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=2914) |
-- 作者:hejfen -- 发布时间:2009/5/25 19:25:00 -- 修改关联父表记录,子表记录怎么样才能自动修改吗? 父表A和表B关联,如果我想修改表A的记录,表B的记录也跟着自动修改,需要什么样的代码? |
-- 作者:狐哥 -- 发布时间:2009/5/25 19:31:00 -- GetChildRows 返回一个DataRow集合,集合中包括指定子表中和该行对应的全部关联行,语法: GetChildRows(ChildName) ChildName: 子表名称。 示例一 假定产品表和订单表之间通过产品编号建立了关联,下面的代码获得第一个产品的全部订单: Dim drs As List(Of Datarow)drs = DataTables("产品").DataRows(0).GetchildRows("订单") 示例二 我们知道,如果要删除父表中的某一行,必须先在关联表中删除对应的子行,这样必须进行两次操作,才能成功删除一个父行。 Dim dr As DataRow = DataTables("产品").DataRows(0)For Each sr As DataRow In dr.GetChildRows("订单") sr.Delete() Next dr.Delete |
-- 作者:hejfen -- 发布时间:2009/5/25 19:53:00 -- 有代码吗?假如表A的第一列、第二列,和表B的第一列、第二列关联,修改表A的第一列的内容,表B的第一列也对应地修改。怎么样的代码? |
-- 作者:mr725 -- 发布时间:2009/5/26 10:10:00 -- 以下是引用hejfen在2009-5-25 19:53:00的发言:
有代码吗?假如表A的第一列、第二列,和表B的第一列、第二列关联,修改表A的第一列的内容,表B的第一列也对应地修改。怎么样的代码? 这头两列应该都不要做任何事情,会自动跟随父表自动生成的吧~ [此贴子已经被作者于2009-5-26 10:15:37编辑过]
|
-- 作者:yangming -- 发布时间:2009/5/26 10:24:00 -- 关联列会自动修改 |
-- 作者:hejfen -- 发布时间:2009/5/27 12:05:00 -- 我这样写可以实现这个功能,但我关联表有十多万记录,速度实在太慢了,什么样的代码才能是最快的啊? |
-- 作者:狐狸爸爸 -- 发布时间:2009/5/27 12:12:00 -- 你这个代码写在哪里啊,看上去有点奇怪。 |
-- 作者:mr725 -- 发布时间:2009/5/27 12:16:00 -- 你不会一次要写(或重算)十几万条记录吧,总是一条条地录入啊~ 对于单条的记录,再长的代码也是瞬间就能完成的~ |
-- 作者:hejfen -- 发布时间:2009/5/27 12:23:00 -- 在表属性的事件,datacolchanged写的 |
-- 作者:狐狸爸爸 -- 发布时间:2009/5/27 12:25:00 -- 以下是引用hejfen在2009-5-27 12:23:00的发言:
在表属性的事件,datacolchanged写的
|