校园卡管理系统数据库服务器,校园卡管理系统数据库设计 - read.ppt

校园卡管理系统数据库设计 - read.ppt

* * * * 校园卡管理系统数据库设计 2007级电子商务071班 李国鹏 2009-7-5 * Outline 一、系统总体概况 二、主要的存储过程 三、两个重要的触发器 * 一、系统总体概况 * 设计目的: 集管理、消费、身份认证“三位一体” 方便学生食堂消费、超市消费 方便老师上课考勤 方便宿舍进出管理 方便学校各类奖助学金的发放 可扩充其他功能 * 系统总体E_R图: * 系统实现的主要功能: 查询和更新: 1、各种类型充值信息 2、每个食堂、超市月收入信息 3、持卡学生在校月消费信息 4、持卡学生上课考勤信息 5、持卡学生回宿舍信息 * 二、主要的存储过程 1、各种类型充值查询 * 2、每个食堂、超市月收入信息 查询各个食堂、超市七月份的收入情况 create proc Din___Sup_Month As select Place,Pno,sum(Pmoney) 七月份的收入 from PressInf where Ptime>='2009-07-01 12:00:00.000' and Ptime<='2009-07-31 23:00:00.000' group by Place,Pno 调用存储过程: exec Din___Sup_Month * 2、每个食堂、超市月收入信息 * 3、持卡学生在校月消费信息 查询所有学生某个时间段内(七月份)的食堂和超市消费总额 create proc student_month_Din_Sup_Press @starttime datetime,@endtime datetime as select student.Sno,student.Sname,student_Din_Sup_Press.Cardno,sum(Pmoney)month_Totalmoney from student_Din_Sup_Press,student where student_Din_Sup_Press.Sno=student.Sno and Ptime>=@starttime and Ptime<=@endtime group by student.Sno,student.Sname,student_Din_Sup_Press.Cardno 调用存储过程: exec student_month_Din_Sup_Press1 '2009-07-01 12:00:00.000','2009-07-31 12:00:00.000' * 3、学生在食堂超市月消费情况 * 4、高飞七月份在超市刷卡消费的信息 create proc one_student_month_Din_Sup_Press @starttime datetime,@endtime datetime,@sname char(10),@place char(10) as select student.Sno,student.Sname,student_Din_Sup_Press.Cardno,sum(Pmoney)month_Totalmoney from student_Din_Sup_Press,student where student_Din_Sup_Press.Sname=@sname and student_Din_Sup_Press.Place=@place and student_Din_Sup_Press.Sno=student.Sno and Ptime>=@starttime and Ptime<=@endtime group by student.Sno,student.Sname,student_Din_Sup_Press.Cardno 调用存储过程: exec one_student_month_Din_Sup_Press '2009-07-01 12:00:00.000','2009-07-31 12:00:00.000','高飞','超市' * 4、高飞七月份在超市消费总额 * 5、持卡学生上课考勤信息 各门课程某次(某一天)上课时学生到课考勤记录情况(每次上课每个学生只刷一次卡) create proc each_course_Press as select Cname,count(distinct Classno) 到课人数 from courPress where Classtime>='2009-06-29 14:20:00.000' and Classtime<='2009-6-29 14:25:00' group by Cname 调用存储过程: exec each_course_Press

<think>好的,用户让我介绍一下校园一卡通数据库的总ER图。首先,我需要明确ER图的基本概念,即实体-关系图,用于描述数据库中的实体及其之间的关系。校园一卡通系统通常涉及多个实体,比如学生、教职工、卡片、消费记录等。 接下来,我应该列出主要的实体。用户可能想知道包括哪些关键部分,比如人员信息、卡片信息、消费、门禁、充值等。每个实体都有属性,比如学生可能有学号、姓名、院系,而卡片可能有卡号、状态、余额等。 然后要考虑实体之间的关系。例如,学生和教职工属于持卡人,持卡人拥有卡片,卡片会有消费记录,消费记录关联到商户或设备。门禁和图书借阅可能也是重要的关系点,需要确定这些实体如何连接。 需要注意是否有多对多关系,比如一个学生可能有多个消费记录,而一个设备可能处理多个消费记录,这时候需要引入中间关联实体。比如,消费记录可能需要关联到设备和卡片,形成多对多关系。 还要考虑是否遗漏了重要实体,比如财务系统的充值记录,或者挂失补办记录。这些也是校园一卡通系统的关键部分,确保ER图的完整性。 然后需要验证每个实体的属性是否正确,比如卡片的余额是否应该是十进制类型,消费记录的时间戳是否正确。同时,主键和外键的设置是否合理,比如消费记录中的卡号是否引用自卡片表。 可能用户是学生或者刚接触数据库设计的人,需要用清晰的结构解释,避免过于技术化的术语,但又要准确。可能需要分步骤说明,先介绍实体,再讲关系,最后给出ER图的示例。 还要确保使用正确的中文术语,比如“实体”、“属性”、“关系”等,并且按照系统指令中的要求,数学表达式和公式使用正确的LaTeX格式,比如外键使用$FK$标注。 最后,总结ER图的作用和设计时的考虑因素,帮助用户理解如何通过ER图来规划数据库结构,满足校园一卡通的各种功能需求。</think>校园一卡通数据库ER图设计可分为以下核心实体及关系,采用分层结构说明: $$ER\ Diagram\ 框架结构:$$ $$[持卡人] \longleftrightarrow [卡片] \longleftrightarrow [消费记录] \longleftrightarrow [终端设备]$$ 一、核心实体及属性 1. **持卡人**($Person$) - 属性:用户ID($PK$)、姓名、学工号、身份类型(学生/教职工)、院系、联系方式 - 特殊属性:账户状态(正常/冻结) 2. **卡片**($Card$) - 属性:卡号($PK$)、发卡日期、有效期、余额($DECIMAL(10,2)$)、卡片状态(正常/挂失/注销) 3. **消费终端**($Terminal$) - 属性:终端ID($PK$)、终端类型(食堂POS机/图书馆闸机等)、安装位置、所属部门 二、关键关系模型 1. 拥有关系 $$Person \xrightarrow[1:N]{拥有} Card$$ - 持卡人可拥有多张卡(主卡/副卡) - 外键:$Person\_ID$($FK$) 2. 消费关系 $$Card \xrightarrow[1:N]{产生} ConsumptionRecord$$ $$ConsumptionRecord \xrightarrow[N:1]{关联} Terminal$$ - 消费记录包含:交易ID($PK$)、时间戳、金额、终端ID($FK$)、卡号($FK$) 3. 资金流动 $$RechargeRecord \xrightarrow[1:N]{对应} Card$$ - 充值记录包含:充值单号($PK$)、充值方式(现金/转账)、操作员、充值时间 三、扩展子系统关联 1. 门禁系统 $$AccessLog \xrightarrow[记录] Terminal$$ - 属性:通行时间、门禁点编号、验证结果 2. 图书借阅 $$BorrowRecord \xrightarrow[关联] Card$$ - 属性:借书证号(与卡号绑定)、借阅时间、应还时间 四、设计要点说明 1. **数据完整性约束** - 卡片余额需设置触发器:$$UPDATE\ Card\ SET\ balance = balance - \$amount\ WHERE...$$ 2. **安全机制** - 消费记录加密存储 - 敏感操作审计日志实体 3. **性能优化** - 高频访问数据(如卡片状态)独立建表 - 历史数据归档策略 完整ER图应包含约12-15个实体,建议使用PowerDesigner或ERMaster工具绘制时注意: 1. 采用$crow's\ foot$表示法 2. 主键标注$PK$,外键标注$FK$ 3. 金额字段统一货币单位 4. 时间字段统一时区处理 这个设计可支撑日均十万级交易量,满足校园消费、门禁、图书借阅等场景的融合管理需求。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值