主题:兄弟朋友帮个忙~咱们讨论个问题听听各位高见!!!
linxuanxu
[专家分:9360] 发布于 2008-02-15 16:26:00
兄弟朋友帮个忙~咱们讨论个问题听听各位高见!!!
比如有一个人手上有门票,门票下限数量是0上限是无穷大。我们要表示人->拥有多少张门票的关系。大家一般怎么实现。
我想:人表中创建一个门票的字段,然后分割每张门票的ID以字串存储。例如:2-3-5-1-8 但是怕出现删除异常。因为没法做外键关联。但是通过触发或存储过程一类的似乎可行?各位试过没有?
回复列表 (共7个回复)
沙发
jzyray [专家分:20610] 发布于 2008-02-16 15:42:00
为什么不以票ID为主键,配上持票人字段呢
板凳
linxuanxu [专家分:9360] 发布于 2008-02-17 16:22:00
这个我也想过。可是在统计每个人的票数上,不是不好统计而是效率比较低。
比如我要统计多少人拥有此票。
3 楼
linxuanxu [专家分:9360] 发布于 2008-02-17 16:26:00
我想我误解1楼朋友的意思了。Sorry~ [em8]
4 楼
lingang1 [专家分:610] 发布于 2008-02-20 16:53:00
用1楼的方法,用Group By来统计个人持有的票数。不过没票的人会消失。
建议建两 个表,
一个表有所有人的数据,有一个字段放持有的票数;
另一个表放所有的票的ID,有一个字段放持有人的ID
5 楼
linxuanxu [专家分:9360] 发布于 2008-02-21 13:23:00
一楼不是也是这个意思么?
6 楼
lingang1 [专家分:610] 发布于 2008-02-21 19:57:00
一楼的意思是只用一个表,也就是我说的第二个表。
7 楼
linxuanxu [专家分:9360] 发布于 2008-02-25 13:55:00
这样的话我倒认为。直接一点。建个关系表会好的多。又简单又省事。
key人ID key票ID
我来回复