文档库 最新最全的文档下载
当前位置:文档库 › 校园一卡通管理系统设计说明书

校园一卡通管理系统设计说明书

课程作业报告

题目:校园一卡通管理系统数据库的设计

学院:江西理工软件学院

专业:软件土木班级:三班

学号:13242314 学生:甘文波

授课教师:李春雨

时间:2015 年 5 月15 日

目录

一、需求分析 (3)

1.1 需求概述 (3)

1.2 功能简介 (3)

二、数据库概念结构设计 (3)

2.1 确定联系集及E-R图 (3)

2.2 画出E-R图 (4)

2.3学生成绩管理系统总E-R图 (5)

三、数据库逻辑设计 (5)

3.1 一卡通信息表(card) (6)

3.2 学生信息表(Student) (6)

3.3 银行卡信息表(bank) (6)

3.4 账单表(zhangdan) (7)

四、建表 (7)

4.1 创建模式并授权 (7)

4.2 创建数据表 (7)

五、数据库的运行和维护 (9)

5.1 定义 (9)

5.1.1 基本表的创建,建表语句 (9)

5.1.2 基本表的删除 (9)

5.2 数据操作 (10)

5.2.1 单表查询: (10)

5.2.2 连接查询 (10)

5.2.3 嵌套查询 (10)

5.2.4 操作结果集查询 (11)

5.3 数据库更新操作 (11)

5.3.1 插入数据 (11)

5.3.2 修改数据 (12)

5.3.3 删除数据 (12)

5.4 数据库的安全性 (12)

5.5 数据库的完整性 (13)

5.5.1 实体完整性定义 (13)

5.5.2 参照完整性定义 (13)

六、总结 (14)

一、需求分析

1.1 需求概述

一张校园卡,取代以前的各种证件(包括学生证、借书证、出入证等)全部或部分功能师生在学校各处出入、办事、活动和消费均只凭这校园卡便可进行,并与银行卡实现自助圈存,最终实现“一卡在手,走遍校园一卡通网络拓扑图校园”,同时带动学校各单位、各部门信息化、规范化管理的进程。此种管理模式代替了传统的消费管理模式,为学校的管理带来了高效、方便与安全。一卡通系统是数字化校园建设的重要组成部分,是为校园信息化提供信息采集的基础工程之一,具有学校管理决策支持系统的部分功能。

1.2 功能简介

主要具有综合消费类、身份识别类、公共信息服务类等功能。整个系统与银行系统、学校原有的系统和学校管理信息系统有良好的衔接,并为学校潜在管理信息系统预留合适的接口,在项目完成后随时为学校增加其它管理系统接口提供必要的协助。

二、数据库概念结构设计

2.1 确定联系集及E-R图

根据前面对系统进行的分析,已经初步了解了一卡通管理系统的数据处理流程,找出与系统有关的各个实体及其相互联系如下:

标示实体集:学生,一卡通,银行卡,账单四个关系。

标示联系集:

学生和一卡通:一名学生只能拥有一张一卡通,一张一卡通也只能被一名学生持有。学生与一卡通关系为:1:1。

一卡通和银行卡:一张一卡通可以与多张银行卡绑定或不与银行卡绑定,一张银行卡可与多张一卡通绑定或不绑定。一卡通与银行卡的关系为:N:M 。

③、标示属性集:

学生(学号,姓名,性别,班级,系别) 一卡通(卡号,密码)

银行卡(卡号,银行类别,办理地区,户主) 账单(流水号,时间,支出金额,转入金额,余额)

2.2 画出E-R 图

一卡通信息图如下:

图2-2-1一卡通实体集的E-R 图

学生信息图如下:

图2-2-2学生实体集E-R 图

银行卡信息图如下:

图2-2-

账单图如下:Array图2-2-4消费记录实体集E-R

2.3学生成绩管理系统总E-R图

三、数据库逻辑设计

逻辑结构是独立于任何一种数据模型的信息结构。逻辑结构的任务是把概念结构设计阶段设计好的基本E-R图转化为宜选用的DBMS所支持的数据模型相符合的逻辑结构,并对其进行优化。

E-R图向关系模型转化要解决的问题是如何将实体型和实体间的联系转化为关系模式,如何确定这些关系模式的属性和码。

设计校园一卡通管理数据库,包括学生、一卡通、银行卡、消费账单四个关系, 其关系模式中对每个实体定义的属性如下:

一卡通信息表

card:(卡号,密码)

学生信息表

Student: (学号,姓名,性别,所属班级,系别)

银行卡信息表

bank: (卡号,银行类型,办理地区,户主)

账单表

bill:(流水号,时间,转入金额,支出金额,余额)

设计出E-R图后,可将E-R图转换为数据库模式。运行本系统时在库中所建立的表分别介绍如下:

3.1 一卡通信息表(card)

3.2 学生信息表(Student)

3.3 银行卡信息表(bank)

3.4 账单表(zhangdan)

四、建表

4.1 创建模式并授权

打开“oracle-oraDb11g”——“SQL plus”

在窗口中登陆超级管理员system

创建模式:CREATE USER gwb IDENTIFIED BY gwb;

授权:grant connect,resource to gwb;

连接:conn gwb/gwb

4.2 创建数据表

一个完整的数据库不可缺少的就是数据表,若干个数据表的集合成一个数据库。数据表主要用来存放一定格式的记录,数据表中的行被称为记录,列被称为字段。创建数据表的过程其实就是定义字段的过程。

在此校园一卡通管理系统中需要创建五个表,即学生信息表、一卡通信息表、银行卡信息表、银行卡与一卡通绑定表(桥表)、消费账单表。

创建并连接gwb模式后,在数据库该模式下添加数据表,步骤如下。

在窗口中键入下列SQL语句

create table student(

sno number(5) primary key,

sname varchar2(10) not null,

ssex char(2),

sclass varchar2(16) not null,

sdept varchar2(4) not null,

constraint ssex check(ssex in ('男','女'))

);

执行上述SQL语句即可创建学生信息表相关表格

create table card(

cno number(5) primary key,

cpassword number(6) not null,

sno number(10) references student(sno)

);

执行上述SQL语句即可创建一卡通信息表相关表格

create table bank(

bno number(9) primary key,

bname varchar2(16) not null,

bdiqu varchar2(16) not null,

bhuzhu varchar2(8) not null

);

执行上述SQL语句即可创建银行卡表相关表格

create table tie(

bank_no number(9) references bank(bno),

card_no number(5) references card(cno),

primary key(bank_no,card_no)

);

执行上述SQL语句即可创建一卡通和银行卡绑定信息表相关表格create table zhangdan(

zno number(4) primary key,

zshijian date not null,

zzhichu number(10,2) not null,

zzhuanru number(10,2) not null,

zyue number(10,2) not null,

cno number(10) references card(cno)

);

执行上述SQL语句即可创建消费账单信息表相关表格

五、数据库的运行和维护

5.1 定义

基本表的创建、修改及删除。

5.1.1 基本表的创建,建表语句

create table student( //创建学生表

sno number(5) primary key, //学号

sname varchar2(10) not null, //姓名

ssex char(2), //性别

sclass varchar2(16) not null, //班级

sdept varchar2(4) not null, //系别

constraint ssex check(ssex in ('男','女')) //表级约束

);

5.1.2 基本表的删除

drop table Student

5.2 数据操作

5.2.1 单表查询:

查询学号为“1204”学生的姓名

select sname from Student where sno=1204;

结果:

5.2.2 连接查询

查询学生的学号、姓名,所持一卡通号、所绑定银行卡号和余额变化。Select Student.sno,Student.sname, https://www.wendangku.net/doc/2113274348.html,o,tie.bank_no, zhangdan.zyue

from Student,card,tie,zhangdan

Where Student.sno=card.sno and tie.card_no=https://www.wendangku.net/doc/2113274348.html,o and https://www.wendangku.net/doc/2113274348.html,o=https://www.wendangku.net/doc/2113274348.html,o; 结果:

5.2.3 嵌套查询

查询卡号为“11002”这张一卡通学生的学号、姓名、班级及系别。

Select sno,sname,sclass,sdept

From Student

Where sno in

(select sno

From card

Where cno='11002')

查询结果:

5.2.4 操作结果集查询

查询一卡通号为11002和11047各所绑定的银行卡中,相同的办理地区Select bdiqu

From bank

Where bno in (select bank_no

From tie

Where card_no=11002)

Intersect

Select bdiqu

From bank

Where bno in (select bank_no

From tie

Where card_no=11047)

查询结果:

5.3 数据库更新操作

5.3.1 插入数据

向bank表中添加一项记录:

卡号:233456756银行名:中国建设银行,办理地区:南昌,户主:lila。insert into

bank values(233456756,'中国建设银行','南昌','lila');

结果:

5.3.2 修改数据

修改学号1305的同学所在班级为会计学131

update Student set sclass='会计学131' where sno='1305';

结果为:

5.3.3 删除数据

删除银行卡号为123456711的绑定信息

Delete

from tie

Where(bank_no='123456711');

结果为:

5.4 数据库的安全性

所谓计算机系统安全性,是指为计算机系统建立和采取的各种安全保护措施,以保护计算机系统中的硬件,软件及数据,防止其偶然或恶意的原因使系统遭到破坏,数据遭到更改或泄露等。为防止因用户非法使用数据库造成数据泄露、更改或破坏,必须采取一些安全性控制措施以保证数据库中数据的安全、可靠和正确有效。安全性控制的防范对象是非法用户和非法操作,防止他们对数据库数据的非法存取。主要采用用户标识及鉴定,使用用户名或用户标识号来标明用户身份。

用户想要对对数据库内容进行相关操作,必须申请一个用户名或用户标识号,每次登陆都必须输入该用户名以及相应正确的口令,然后系统对其进行验证,只有通过验证的用户方可对数据库进行操作。

5.5 数据库的完整性

5.5.1 实体完整性定义:在学生信息表student中将sno定义为主码。

create table student( //创建学生信息表

sno number(5) primary key, //学号

sname varchar2(10) not null, //名字

ssex char(2), //性别

sclass varchar2(16) not null, //班级

sdept varchar2(4) not null, //系别

constraint ssex check(ssex in ('男','女')) //表级约束

);

5.5.2 参照完整性定义:在账单表zhangdan中将cno定义为外码。

create table zhangdan( //创建账单表

zno number(4) primary key, //账单流水号

zshijian timestamp not null, //账单生成时间

zzhichu number(10,2) not null, //支出金额

zzhuanru number(10,2) not null, //转入金额

zyue number(10,2) not null, //账户余额

cno number(10) references card(cno) //外键

);

六、总结

本校园一卡通系统设计简单,功能单一,只能实现最基础的数据查询管理功能。各实体及实体间联系,实体与属性间联系都是凭自己的想法,在部分逻辑联系和现实有所不同,但整体还是较为符合常理。部分是参照课本数据库结构进行设计,因此在独立思维和创新方面还有很大不足之处。另外由于思维上的漏洞,考虑不够周全导致数据库中插入的数据给后期处理和查询带来一些不便。设计过程中我也遇到了一些问题,再向其他同学请教的过程中我收获了很多。

(1)在设计表时应注意字符的使用,尤其是标点符号,很容易搞错。

(2)正确定义数据类型,字符型要加单引号。

(3)注意时间戳的格式转化。

一个学校的校园一卡通管理是一个庞大而又十分重要的数据管理系统,通过唯一确定的编号,给每个人的身份进行了标识,对于学校管理人员来说,大大提高了管理效率,减少工作量,使管理更方便快捷。同时每个人都有作为本校成员的有效凭证,在生活、学习、消费上都带来极大的便捷。

总的来讲,对课本上的主要知识进行了汇总和运用,对数据库的基础知识进一步掌握,达到了预期的效果。通过这次的数据库课程设计锻炼了我们的操作能力和团结协作能力,增强团队合作意识。让我们从实际上去分析一件事比较全面和对数据库设计有了更深的了解。

相关文档
相关文档 最新文档