JiveJdon Community Forums
在线457人   首页   主题表   培训咨询   标签   精华   查搜   注册    登陆 RSS
首页 » 论坛 » 项目工程开发经验谈
???en_US.forumThreadPrev.name??? 上一主题
  Go back to the topic 返回本主题   Go back to the topic listing返回主题列表
???en_US.forumThreadNext.name??? 下一主题
Go 总共有 6 回复 / 1
 发表新帖子   回复该主题贴
lijinlinlin

悄悄话
发表文章: 70
注册时间: 2003年10月15日 13:52
求数据表设计的经验,高人有更好的方法吗? 2005年12月29日 22:25 到本帖网址 加入本帖到收藏夹 发送到手机 回复该主题
标签列表 数据库(148)     
在设计数据表的时候常遇到这样一个问题?简单举例如下:

表1:用户表(字段如下)
ID(编号) name(姓名) camera(相机型号) ???
int String ??? ???

表2:相机型号表(字段如下)
ID(编号) camera(相机型号)
int String

假设ID都是主键,自动增加,不可编辑的。


在这个例子中,这两个表的内容都是可以自由操作的(CRUD)。
问题是:用户表怎么去设计比较合理,又方便操作???

1。表1的字段“camera”设为INT型,存放表2的ID,当查询表1要得到记录的详细信息时,用JOIN连接查询,就可以得到用户的相机型号。这样做的好处是,当表2某记录修改后,表1就不用动了;但是当表2某记录被删后,用JOIN连接查询就得不到表1的用户信息了,只查表1又得不到完整信息。

2。表1的字段“camera”设为STRING型,存放表2的“camera”,当查询时只查表1就行了;但是当表2某记录修改后,还要改表1,有些麻烦。

3。表1的字段“camera”设为INT型,存放表2的ID;然后在表1中增加一个字段“?”并设为STRING型,来存放表2的“camera”。当修改表2时,通过ID去修改表1,这样虽可省去些麻烦,但为了在查询时只查表1,还是要修改表1的“?”字段。

4。在方法3的基础上,修改了表2后不修改表1,改成定期全体UPDATE,这样造成的问题就是查询表1时得到的信息不及时。

各位高人们是怎么做的,求刺教!!!
lijinlinlin

悄悄话
发表文章: 70
注册时间: 2003年10月15日 13:52
Re: 求数据表设计的经验,高人有更好的方法吗? 2005年12月30日 17:38 到本帖网址 加入本帖到收藏夹 发送到手机 回复该主题
老板,给解答一下吧???
lijinlinlin

悄悄话
发表文章: 70
注册时间: 2003年10月15日 13:52
Re: 求数据表设计的经验,高人有更好的方法吗? 2005年12月31日 20:56 到本帖网址 加入本帖到收藏夹 发送到手机 回复该主题
都过节去了,没人了55555555
555
555
555
banq

悄悄话
发表文章: 9528
注册时间: 2002年08月03日 17:08
Re: 求数据表设计的经验,高人有更好的方法吗? 2006年01月02日 20:43 到本帖网址 加入本帖到收藏夹 发送到手机 回复该主题
头晕,我已经反复说过,不要使用面向数据库编程方法,使用面向对象方法,你先把模型建立好,再用Hibernate/iBatis之类工具实现持久化即可。

参考这个帖子:
http://www.jdon.com/jive/article.jsp?forum=62&thread=23720
kevinzhou

悄悄话
发表文章: 26
注册时间: 2005年10月04日 10:58
Re: 求数据表设计的经验,高人有更好的方法吗? 2006年01月06日 08:07 到本帖网址 加入本帖到收藏夹 发送到手机 回复该主题
>>>>但是当表2某记录被删后,用JOIN连接查询就得不到表1的用户信息了,只查表1又得不到完整信息。


为什么得不到表一的用户信息?不是join么
harryking

悄悄话
发表文章: 1
注册时间: 2006年03月13日 11:14
Re: 求数据表设计的经验,高人有更好的方法吗? 2006年03月13日 11:17 到本帖网址 加入本帖到收藏夹 发送到手机 回复该主题
为什么要这样设计表啊?
你这样设计本身有缺陷。
你是把两个表之间的关系放到了其中一个标表中才出现你说的问题
我认为正确的做法应该是把2表的关系单独建立一张表
你就有3张表: 个人信息,人相机关系,相机信息
这样应该不会出现你说的问题
eserver220

悄悄话
发表文章: 9
注册时间: 2005年03月10日 12:34
Re: 求数据表设计的经验,高人有更好的方法吗? 2006年04月02日 15:50 到本帖网址 加入本帖到收藏夹 发送到手机 回复该主题
一直想学JSF,可是没合适的可视工具。GOOGLE一把看到你的wowdkp例子,还来不及研究。
先回答一下你的问题。
你可以采用SQL 92标准的 OUTER LEFT JOIN 或 RIGHT JOIN解决。
就是不知道你用的是何数据库。我用的是Oracle 9i 是支持的。

你的例子中用到了Myfaces的tomahawk,但steady c
(一位JSF高手)提示我Myfaces不直接支持可视开发。我的应用基本上是一些CRUD应用,再加上部分custom event.就如同Myfaces的DEMO例子差不多。请问你的JSF页面是手工写的,还是采用了可视化工具?
这个主题有 6 回复 / 1Go
???en_US.forumThreadPrev.name??? 上一主题
  Go back to the topic 返回本主题   Go back to the topic listing返回主题列表    返回页首返回页首
???en_US.forumThreadNext.name??? 下一主题
热点TAG: AOP cache 缓存 DDD EJB 集群 设计模式 Hibernate IOC JiveJdon OO RBAC Seam Spring Struts
正在读取,请等待...
google yahoo 新浪ViVi 365Key网摘 天极网摘 CSDN网摘 添加到百度搜藏 POCO网摘 博采网摘
查询本论坛内 回复超过的热门帖子
     回复该主题贴
标题
 
粗体 斜体 下划线 插入图片 插入代码 插入url链接 插入附件
内容
  每2分种自动备份发贴内容Ctrl-V粘贴取出,提问题前先查询标签列表

RSS 手机阅读 add to google add to yahoo
解惑之道在J道 ,打造中国最具影响力的的企业软件社区
OpenSource JIVEJDON v3.0 Powered by JdonFramework Code © 2002-08 jdon.com

anti spam