当前位置:文档之家› 电信营业厅收费系统数据库课程设计

电信营业厅收费系统数据库课程设计

《数据库课程设计》课程设计报告设计题目:某电信营业厅收费管理系统学院名称:信息工程学院专业班级:姓名:学号:目录1题目要求某电信营业厅营业收费管理系统●实现费用类型、业务员管理;●实现客户信息管理,客户设有结余金额;●实现收费管理,自动修改用户的结余金额(用触发器实现);●创建存储过程统计指定月份各种费用类型的收费情况;●创建存储过程统计指定日期各业务员的收费情况;●创建规则限定客户的电话号码是以数字1开头的11位数字组成的号码;●创建表间关系。

2 需求分析阶段需求分析简单地说就是分析用户的要求。

需求分析是设计数据库的起点,需求分析的结果是否准确地反映了用户的实际要求,将直接影响到后后来各个阶段的设计,并影响到设计结果是否合理和使用。

需求分析阶段的目标1.了解电信营业厅营业收费管理系统的基本内容;2.了解电信营业厅营业收费管理系统的基本业务流程;3.了解电信营业厅营业收费管理系统对业务员的管理,费用类型管理,客户信息管理的过程。

4.通过调查和与电信营业厅人员的交流,了解用户对电信营业厅系统的业务要求,安全性和完整性要求;需求分析阶段的任务处理对象:根据电信营业厅收费系统要完成的功能,该系统有以下数据库信息。

●收营员信息。

包括登录该管理系统的收营员的基本信息,如收营员编号、收营员编号、密码、收营员年龄。

●客户信息。

包括各个客户的基本信息,如客户手机号码、客户姓名、客户地区信息、客户结余金额等。

●话费信息。

包括该客户每月话费的详细信息,如:通话费、业务费、上网费等。

●收费管理。

包括客户电话、收银员编号、收费金额、收费日期。

1.能够存储所有入网客户的信息,并方便有效的进行相应的数据操作和管理,主要包括1)客户入网2)客户信息的关键字检索查询。

2.能够对客户的交费信息进行查询,这主要包括:1)客户交费交费纪录2)客户余额查询需求分析阶段成果体会与收获系统需求分析主要是通过对周边的附近各电信营业厅进行访问,请教,了解电信营业厅运行机制,并通过上网搜索相关电信营业厅的知识。

由于不熟悉电信营业厅的运行规则,在绘制业务流程图和数据流程图时,遇到很多问题,存在许多考虑不周的问题。

反反复复的重新考虑,重新分析和完善,才逐步把业务弄清楚,最终顺利的完成了需求分析阶段的任务。

电信营业厅收费系统数据字典数据字典是体统中各类数据描述的集合,是进行详细的数据手机和数九分析所获得的主要成果。

数据字典在数据库设计中占有很重要的地位。

数据字典通常包括数据项、数据结构、数据流、数据存储、处理过程和外部实体6个部分。

数据项是不可再分的数据单位。

数据结构反映了数据之间的组合关系。

数据流是数据结构在系统内传输的路径。

数据存储是数据结构停留或保存的地方也是数据流的来源和去向之一。

处理过程的具体处理逻辑一般用判定表或判定树来描述。

数据字典是需要描述处理过程的说明性信息。

本文中包括14个数据项如下:3 概念设计阶段将需求分析得到的用户需求抽象为信息结构即概念模型的过程就是概念结构设计。

它是整个数据库设计的关键。

概念设计阶段的任务和目标(1)选择底层数据流为切入点,通常选择实际系统中的子系统;(2)设计分E-R图,即各子模块的E-R图;(3)生成初步E-R图,通过合并方法,做到各子系统实体、属性、联系统一;(4)生成全局E-R图,通过消除冲突等方面。

收营员实体图客户信息实体图收费管理实体图话费信息实体图系统ER图4.逻辑设计阶段逻辑设计的任务和目标以上的概念设计阶段是独立于任何一种数据模型的,但是逻辑设计阶段就与选用的DBMS产品发生关系了,系统逻辑设计的任务就是将概念设计阶段设计好的基本E-R图转换为选用DBMS产品所支持的数据模型相符合的逻辑结构。

具体内容包括数据组织(将E-R图转换成关系模型、模型优化、数据库模式定义、用户子模式设计)、数据处理(画出系统功能模块图)两大任务。

数据组织实体型转换为关系模式。

实体的属性就是关系的属性,实体的码就是关系的码。

对于实体间的联系则有以下不同的情况:一个m:n联系转换为一个关系模式。

与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,而关系的码为各实体码的组合。

一个1:n联系可以转换为一个独立的关系模式,也可以与n端对应的关系模式合并。

如果转换为一个独立的关系模式,则与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,而关系的码为n端实体的码。

一个1:1联系可以转换为一个独立的关系模式,也可以与任意一端对应的关系模式合并。

三个或三个以上实体间的一个多元联系可以转换为一个关系模式。

与该多元联系相连的各实体的码以及联系本身的属性均转换为关系的属性,而关系的码为各实体码的组合具有相同码的关系模式可合并。

由于客户与话费的联系方式是1:n(一对多),而收营员与客户之间的联系方式则是n:m(多对多),这样要把它们之间的联系转化为独立的关系模式,,将其联系也转化成独立的关系模式,具体的基本E-R图向关系模型的转化如下:收营员(收营员编号,密码,年龄,姓名)收费管理(手机号码(外码),收营员编号(外码),收费金额,收费日期)客户管理(手机号码,姓名,地区,结余金额)话费信息(手机号码(外码),月份,通话费,上网费,业务费)(注:画框的字为主码)数据库模式定义数据库的模式定义包括三个方面:1.数据的逻辑结构;2.数据之间的联系;3.数据有关的完整性约束、安全性要求。

收营员表客户信息表手机号码为主码,每个人的的手机号码可以确定该客户的名字及信息。

手机号码要求以1开头,且只能输入11位,该约束语句如下手机号码bigint,check(手机号码like'1%'),check (len(手机号码)=11)收费管理表由于每个手机号码可以交多次费,且每个收营员可以为同一客户进行交费,故该表中没有主码,手机号码位客户信息表中的主码,在此作外码。

收营员编号为收营员表中的主码,在此做外码。

收费日期,必须输入正确的年月日,故为date型。

话费信息表由于每个客户每个月只有一张话费信息表,估、故只有手机号码与月份同时确定时才可确定一张话费信息表。

且月份只能输入1-12月,该约束方式如下月份int,check ((月份)between 1 and 12)5物理设计阶段物理设计阶段的目标与任务数据库的物理设计就是为逻辑数据模型选取一个最合适应用要求的物理结构的过程,在这个阶段中要完成两大任务:(1)确定数据库的物理结构,在关系数据库中主要是存取方法和存储结构;(2)对物理结构进行评价,评价的重点是时间和空间效率。

系统功能模块图本系统的功能主要包括如图几个方面:系统功能图6 实施阶段建立数据库、数据表数据库的建立create database Chinanet建立数据表收银员表create table收银员(收营员编号char(11)primary key,收营员姓名char(10)not null,年龄int,密码char(20)not null);客户信息create table客户信息(手机号码bigint primary key,check(手机号码like'1%'),check (len(手机号码)=11),姓名char(10)not null,地区char(20)not null,结余金额int);话费信息create table话费信息(手机号码bigint,check(手机号码like'1%'),check (len(手机号码)=11),通话费intnot null,业务费int,上网费int,月份int,check ((月份)between 1 and 12),foreign key(手机号码)references客户信息(手机号码),primary key (手机号码,月份));收费管理create table收费管理(手机号码bigint (,check(手机号码like'1%'),check (len(手机号码)=11),收营员编号char(11)not null,收费金额int not null,收费日期date not null,foreign key(收营员编号)references收银员(收营员编号),foreign key(手机号码)references客户信息(手机号码),);建立存储过程存储过程共有4个存储过程1.统计指定日期各业务员的收费情况create procedure P_存储过程(@收费日期date,@收营员编号char(11),@收费总金额int output)asselect@收费总金额=SUM(收费金额)from收费管理where (@收费日期=@收费日期and@收营员编号=@收营员编号)2.统计指定月份各种费用类型的收费情况(1)上网费create procedure T_存储过程(@月份int,@上网费总金额int output)asselect@上网费总金额=SUM(上网费)from话费信息where (@月份=月份)(2)业务费create procedure T1_存储过程(@月份int,@业务费总金额int output)asselect@业务费总金额=SUM(业务费)from话费信息where (@月份=月份)(3)通话费create procedure T2_存储过程(@月份int,@通话费总金额int output)asselect@通话费总金额=SUM(通话费)from话费信息where (@月份=月份) 建立触发器触发器收费管理,自动修改用户的结余金额create trigger T3_on收费管理for insertasdeclare@余金额intselect@余金额=收费金额from收费管理update客户信息set结余金额=结余金额+@余金额where客户信息.手机号码=(select手机号码from inserted)数据入库系统包括客户收费,客户增加,收营员管理等功能,共有4张基本表,采用事先在Excel中录入数据,然后使用SQL Server 2008数据导入/导出向导功能,直接将数据导入到相应的基本表中。

7系统调试、测试对电信营业厅收费管理系统进行测试,验证每个功能是否符合要求,具体的测试如下:1 基本表和视图视图查看收营员表查看客户信息表查看收费管理表查看话费信息表查看2 检验各个存储过程统计指定日期各业务员的收费情况declare@收费总金额intexec P_存储过程'2015-12-06','1',@收费总金额outputselect'收费总金额'=@收费总金额统计指定月份各种费用类型的收费情况上网费declare@上网费总金额intexec T_存储过程'3',@上网费总金额outputselect'上网费总金额'=@上网费总金额业务费declare@业务费总金额intexec T1_存储过程'3',@业务费总金额outputselect'业务费总金额'=@业务费总金额通话费declare@通话费总金额intexec T2_存储过程'3',@通话费总金额outputselect'通话费总金额'=@通话费总金额3 检验各个触发器在进行交费之后insert into收费管理values (,'2',30,'2015-12-06')该客户结余金额如下8心得体会在本次课程设计过程中,首先拿到题目时,给我最大的感觉就是难。

相关主题