|
|
导航: |
论坛 -> DELPHI技术
斑竹:liumazi,sephil |
|
作者: |
|
2003/9/11 8:55:54 |
标题: |
SQL+Delphi问题急救,希望大家给予帮助,感激不尽! |
浏览:1741 |
|
加入我的收藏 |
楼主: |
有三个表格,具体定义分别如下: 1、CardData(卡片资料):预设为6000条记录,CardNo从1·6000,不可添加或删除。 CardNo int 为主键 (卡片编号) CardTypeNo Int (卡片型式代码) CardID char 可为空 (卡片内码) HolderNo int 可为空 (持有该卡片的持有者的编号) CardCanUse bit (当卡片内码不为空时,即为true,表示可用;否则false,表示不可用)。 2、HolderData(公司人员信息):预设为6000人,HolderData从1~6000,不可添加或删除。其实一个人可以领用多张卡片,至于“CardNo”这个字段该如何设置,我也不太清楚? HolderNo int 为主键 (人员编号) HolderName char JobTitle char CardNo 可为空 (该人员所领用的卡片) 3、HolderCardData(已经领用的卡片信息) HolderNo int (该卡片的持有者编号) CardNo int (卡片编号) EffectiveDate char (生效起始日期) ExpireDate char (生效截止日期)
问题:在HolderData中一个人领用了某张或者删除了某张卡片之后,如何在CardData和HolderCardData中实现相应的改动? 具体来说: (1)在HolderData中,如果一个HolderNo领用了一张卡片CardNo,则:首先,在CardData中,该CardNo所对应的HolderNo做相应的改变;同时,该HolderNo和CardNo应该作为一条记录添加到HolderCardData中。如:张三领用了卡片1,则在CardData中,卡片1所对应的持有者编号应该相应的变为“张三”;同时,张三领用了卡片1这条记录也应该出现在HolderCardData中。 (2)在HolderData中,如果一个HolderNo归还了一张卡片CardNo,则:首先,在CardData中,该CardNo所对应的HolderNo变为空,表示此时没有领用者;同时,该HolderNo和CardNo作为一条记录应该在HolderCardData中删除。如:张三本来领用卡片1,此时它要归还卡片1,则在CardData中,卡片1所对应的持有者编号应为空,表示该卡片没有被领用;同时,张三领用卡片1这条记录应该从HolderCardData中删除。
我这样说,应该比较详细明白了,希望大家能够尽快帮我解决这个问题,否则我无法继续下去!
----------------------------------------------
- |
作者: |
hedong (hedong) |
★☆☆☆☆ |
-
|
盒子活跃会员 |
|
2003/9/11 12:00:29 |
1楼: |
用触发器
----------------------------------------------
-
|
作者: |
|
2003/9/11 14:04:14 |
2楼: |
关联
----------------------------------------------
-
|
作者: |
|
2003/9/12 9:29:02 |
3楼: |
用数据库来实现是最好的,也是最笨的方法了
此帖子包含附件:
大小:24.0K |
----------------------------------------------
哇靠 ~~~~~~~~~~~~~~ 这个帖子一定要回!
|
|