请问一般“会员卡消费管理系统”中的“充值卡”和“次数卡”如何在数据库中合理建表,以下三种方法那一种更好?是否还有更好的方法?如下:
第一种方法,把所有会员卡(充值卡和次数卡)都使用一个“会员卡表”存放,表中次数卡余额为0(不在此表中反映使用次数),然后再建一个“次数卡表”并设置外键“会员卡号”,“次数卡表”中清晰记录次数卡情况
会员卡表:
会员卡号........会员号.............卡类型.................余额...............开卡时间
1.......................1....................金卡...................1000...............2010-4-5
2........................2....................淋足卡次数卡.......0.................2010-4-6
次数卡表:
次数卡卡号............会员卡号............卡类型......................次数...........使用次数.......开卡时间............失效时间
1.............................2....................... 淋足卡次数卡...........10................5...............2010-4-5............2013-4-5
*******************************************************************************************************************************************
第二种方式,把“充值卡”和“次数卡”合成一张“会员卡表”,次数卡的次数用余额来管理,10代表10次,每消费一次减1
会员卡表:
会员卡号............会员号................卡类型................余额...............开卡时间
1............................1.......................金卡....................1000............2010-4-5
2............................2......................淋足卡次数卡.......10...............2010-4-6
*******************************************************************************************************************************************
第三种方式,把“充值卡”和“次数卡”分成两个表来存放管理
会员充值卡表:
会员卡号...............会员号...............卡类型...............余额...............开卡时间
1...........................1...........................金卡...............1000...............2010-4-6
次数卡表:
次数卡卡号 ........ 会员卡号........卡类型...................次数.........使用次数.........开卡时间...............失效时间
1............................2...................淋足卡次数卡.........10............ 5....................2010-4-5...............2013-4-5
第三种好