100分 这个表怎么做好呢?
我正在做一个人才网,希望各个人人会员和企业会员之间可以互发短消息.这个保存消息的表应该怎么设计呢?我想了以下两种方法
ID
企业发送人(索引)
个人发送人(索引)
企业接收人(索引)
个人接收人(索引)
消息内容
ID
发送人
发送人类型(索引)
接收人
接收人类型(索引)
消息内容
问题点数:100、回复次数:16Top
1 楼fense2002()回复于 2004-09-03 17:35:05 得分 0
谢谢了,我急着使用它。Top
2 楼hdhai9451(☆新人类☆)回复于 2004-09-03 17:36:27 得分 10
感覺第二種比較好!Top
3 楼yelang771(牧野流星)回复于 2004-09-03 17:46:01 得分 5
第二種吧Top
4 楼fense2002()回复于 2004-09-03 17:48:23 得分 0
我的语句中经常使用以下语句:
where 接收人类型=2 and 接收人=5
where 接收人=5 and 接收人类型=2
这样执行效率有什么大的区别吗?或者需要不需要再给接收人类型,发送人类型建立索引Top
5 楼luo_jian_dong(我帅,我容易吗)回复于 2004-09-03 17:58:04 得分 0
这是个多对多的关系(m;m)
建议3个表
表1:人会员
表2:企业会员
表3:企业-人
表3 中可以满足
where 接收人类型=2 and 接收人=5
where 接收人=5 and 接收人类型=2Top
6 楼zhenliang(亮)回复于 2004-09-03 19:59:22 得分 5
我觉得 第一种好,查询的速度块,空间换时间Top
7 楼pengda1i(冒牌大力 V0.4)回复于 2004-09-03 20:40:24 得分 10
ID
发送人
接收人
类型 (0==企业-->企业,1==企业-->个人,2==个人-->企业,3==个人-->个人)
消息内容
索引:接收人,发送人,类型
Top
8 楼wanyingsong(豌豆)回复于 2004-09-03 21:04:24 得分 15
建立索引要兼顾查询和更新,如果经常更新的话,索引不能建立太多Top
9 楼zjcxc(邹建)回复于 2004-09-03 22:00:01 得分 20
我觉得是第二种,发送是双向的,任何人都可以是发送方,也可以是接收方,所以没有必要搞得像第一种那么复杂.Top
10 楼lzymagi(逸)回复于 2004-09-03 22:28:44 得分 10
第二种好.没必要相第一种那样.索引太多速度也就降下来了.在说记录的条数也要多了Top
11 楼zonelive(peter)回复于 2004-09-04 01:39:45 得分 10
第二种,很明显,第一种除了直观外,没好处了Top
12 楼AutumanChen(网络游客)回复于 2004-09-04 03:16:24 得分 0
我认为只需要以下四个栏位即可!
ID
发送人
接收人
消息内容
像发送人类型 及 接收人类别,应该存在人员档案中. 在此Table中,不需要体现.
Top
13 楼zjcxc(邹建)回复于 2004-09-04 07:46:54 得分 10
是否在此Table中体现 发送人类型 及 接收人类别
我觉得跟他的查询需求有关.
如果是经常按 发送人类型 及 接收人类别 进行各种统计之类,加这个字段不为过.
毕竟统计后的结果,再与基顾资料表关联,效率高.Top
14 楼fense2002()回复于 2004-09-05 12:00:04 得分 0
必须在这个表中体现发送人及接收人类别的,因为企业用户和个人用户是放到两个表中的。Top
15 楼fense2002()回复于 2004-09-05 12:08:04 得分 0
讨论这么长时间我一直说错了一个问题
我的第二个表是这样的
ID
发送人(索引)
发送人类型
接收人(索引)
接收人类型
消息内容Top
16 楼loveyong488(程序〓〓苦)回复于 2004-09-05 12:11:44 得分 5
第二个表要好点。Top




