首页 新闻 赞助 找找看

自定义实体类关联处理怎么办?

0
悬赏园豆:50 [已解决问题] 解决于 2008-05-27 13:34
<P><FONT face=Verdana>这种情况该如何处理: <BR>两个自定义类:USER和DEPT,USER中包含一个DEPT_ID的属性, <BR>那在显示USER信息的时候,需要显示DEPT_NAME. <BR>如果在查询的过程中,参数和返回值都是以实体传递,那这种查询的结果该如何处理才能更加方便呢? </FONT></P> <P><FONT face=Verdana>我当前的处理方式是先查询指定条件的USER实体,再根据DEPT_ID逐个查询DEPT实体.&nbsp;&nbsp; <BR>========================<BR>另个问题:<BR>假如我删除DEPT时候,必须删除该实体包含的USER实体,现在有两种处理方式:<BR>1)在代码中处理,查询到给DEPT实体包含的USER实体,删除;然后查询到该DEPT实体,删除;<BR>2)直接用存储过程等在SQL中直接处理;<BR>这个例子比较简单,如果关联变更的数据过多,是否会因为多次想服务器发送请求而有所影响呢?哪种方式更好一些?</FONT></P> <P><FONT face=Verdana>迷惑中期待回答!!!!谢谢.</FONT></P>
问题补充: 1. 在USER中增加一个DEPT属性的情况, 对这个属性赋值该如何实现呢?我看过ActiveRecord的一点知识,好象是这么处理的,但是不知道其中的具体查询代码是怎么实现的.;( 2.删除的问题用触发器或者级联删除是可以实现, 可是我想知道上面列出的两种中哪个更好一些?? 另外,谢谢答复;)
155144的主页 155144 | 初学一级 | 园豆:192
提问于:2008-05-16 12:18
< >
分享
最佳答案
0
1)实体可以添加属性,查询的时候使用视图.有外键的表可以建立视图以获得希望的属性; 2)如果不喜欢自动删除,可以使用存储过程删除,关联的数据很多时,优点就会明显.
sgabello | 菜鸟二级 |园豆:275 | 2008-05-27 13:32
其他回答(4)
0
见仁见智了,你的方法也是不错的,或者使用冗余字段,给User表加个DeptName字段,再或者在User里加个Dept属性,一起取出来 关于删除的问题,在设置外键的时候就能OnDelete=CASCADE,或者用触发器都能解决
Gray Zhang | 园豆:17610 (专家六级) | 2008-05-16 13:01
0
1. 参考这篇 http://www.cnblogs.com/darkangle/archive/2008/03/26/1123509.html 2. 在SQL数据库中设置外键的删除时的动作为级联就可以了~~~
沙加 | 园豆:3680 (老鸟四级) | 2008-05-16 13:48
0
dept不多,可以缓存,不想缓存,,在user中添加一个name也行.. 删除用存储过程吧..
wingoo | 园豆:1513 (小虾三级) | 2008-05-16 14:10
0
好像不太会使用实体类的样子,我也不会,所以我根本就不用。
金色海洋(jyk) | 园豆:290 (菜鸟二级) | 2008-05-25 06:52
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册