发信人: johnnyxu()
整理人: majorsun(2000-03-08 19:11:55), 站内信件
|
当对象A以对象B的集合作为它的属性时,B又以对象C的集合作为
它的属性,形成层次关系。为了管理B、C的集合中每一个对象,建立
B、C的集合类,还建立数据存取类进行数据库连接和数据存取。
VB中,数据存取类应如何将数据传给A、B、C?是一次性传回分层
记录集,还是依次取回A、B、C的数据?A、B、C从数据存取类得到数
据后,怎样、在哪里组装属性?在集合类中还是在类中?能否只建立一
个数据存取类的实例,为所有A、B、C提供数据(否则要建立多个数据
库连接)
-- ※ 来源:.月光软件站 http://www.moon-soft.com.[FROM: 202.96.253.207] 发信人: leeyg (雷云沟), 信区: SystemAnalysis 标 题: Re: VB如何组装“整体-部分”关系中的“整体”对象? 发信站: 网易虚拟社区 (Sat Oct 23 13:50:53 1999), 站内信件
【 在 johnnyxu (johnny) 的大作中提到: 】
: 当对象A以对象B的集合作为它的属性时,B又以对象C的集合作为
: 它的属性,形成层次关系。为了管理B、C的集合中每一个对象,建立
: B、C的集合类,还建立数据存取类进行数据库连接和数据存取。
: VB中,数据存取类应如何将数据传给A、B、C?是一次性传回分层
: 记录集,还是依次取回A、B、C的数据?A、B、C从数据存取类得到数
: 据后,怎样、在哪里组装属性?在集合类中还是在类中?能否只建立一
: 个数据存取类的实例,为所有A、B、C提供数据(否则要建立多个数据
: 库连接)
先让我理解一下你的问题:
A是对象,A中有“对象B的集合”(而不是对象B的属性的集合)
B是对象,B中有“对象C的集合”(而不是对象C的属性的集合)
如果正确,按我的理论,应该这样:
建模
classA: 属性:A的属性,一个类B的已有对象数据库的表现(??,
我不知道用什么准确的术语描述这个对象集,在
DELPHI中,这是一个TABLE,或QUERY,或DATASET)
方法:Get
classB: 属性:B的属性,一个类B的已有对象数据库的表现
方法:Get
classC: 属性:C的属性
方法:Get
数据库的设计:
数据库A:A的属性
数据库B:B的属性,与A的连接字段,(连接组装,如A的ID)
数据库C:C的属性,与B的连接字段,(连接组装,如B的ID,注意并不
需要A的连接字段)
数据存取类的存取:
存(即备份对象):对A:A的属性存入数据库。将A中的B数据库TABLE
更改--如果有需要的话,注意,A中无需
负责B里面的C的数据库的更改,这是对象B
要处理的事情。
对B:B的属性存入数据库,将B中的C数据库TABLE
更改--如果有需要的话。
对C:C的属性存入数据库。
取(即对象恢复):对A:从数据库A中读取各字段,从数据库B的TABLE
中SELECT属于本对象的B集
SELECT * FROM B WHERE ID=本A对象的ID
注意,A中无需负责B里面的C的数据库的恢复,
这是对象B要处理的事情。
对B:从数据库B中读取各字段,从数据库C的TABLE
中SELECT属于本对象的C集
SELECT * FROM C WHERE ID=本B对象的ID
对C:从数据库B中读取各字段。
-- ※ 修改:.leeyg 于 Oct 23 15:56:50 修改本文.[FROM: 202.104.35.40] ※ 来源:.月光软件站 http://www.moon-soft.com.[FROM: 202.104.35.40]
|
|