数据库电话计费系统.docx

上传人:b****5 文档编号:5372809 上传时间:2022-12-15 格式:DOCX 页数:25 大小:334.96KB
下载 相关 举报
数据库电话计费系统.docx_第1页
第1页 / 共25页
数据库电话计费系统.docx_第2页
第2页 / 共25页
数据库电话计费系统.docx_第3页
第3页 / 共25页
数据库电话计费系统.docx_第4页
第4页 / 共25页
数据库电话计费系统.docx_第5页
第5页 / 共25页
点击查看更多>>
下载资源
资源描述

数据库电话计费系统.docx

《数据库电话计费系统.docx》由会员分享,可在线阅读,更多相关《数据库电话计费系统.docx(25页珍藏版)》请在冰豆网上搜索。

数据库电话计费系统.docx

数据库电话计费系统

 

数据库原理及应用

课程设计

《电话计费管理系统》

 

学生姓名:

*******

学生班级:

*******

学生学号:

********

指导老师:

*******

目录

一、需求分析2

1.1背景2

1.2查询模块2

1.3计费模块2

1.4信息更新模块2

1.4.1数据流程图3

1.4.2数据字典5

二、概念设计8

2.1概述8

2.2系统E-R图8

2.2.1实体及其属性图8

2.2.2局部E-R图11

2.2.3完整的实体联系图12

2.3.创建各表13

2.3.1创建客户资料表13

2.3.2创建客户受理表14

三、逻辑结构设计15

3.1概述15

3.2.E-R图向关系模型的转换16

四、物理结构设计18

4.1概述18

4.2存储结构设计18

4.3存取路径设计19

4.4建立索引19

五、数据库实施20

5.1概述20

5.2应用系统的开发(部分界面截图)21

5.3数据库的备份23

六、结论24

参考文献24

一、需求分析

1.1背景

近些年来电信通讯行业越来越发达,发展也越来越快,当然竞争必然也越来越激烈。

电信市场的竞争逐渐从简单的价格竞争转向到了更高层次的服务竞争,运营商把提高服务能力作为了核心竞争力。

然而计费系统作为电信通讯行业系统的基础,其准确性和有效性至关重要,计费系统的错误将直接影响结算、账务及客户管理的系统的处理结果。

由于我国电信用户基数巨大,因此任何一个很小的差错所造成的差错都是巨大的。

该系统信息的来源主要有管理员添加,方便网站管理员的查询和管理。

该系统的任务主要是处理用户信息数据方便、快捷、准确。

1.2查询模块

(1)月花费查询:

客户可对每月的话费进行查询(每项记录包括通话费、新业务费、费用合计、实缴费用合计等信息)。

(2)账户余额查询:

客户可以查询自己的账户余额。

(3)用户个人资料查询:

客户可以查询自己的资料。

(4)电信业务查询:

客户可以实时了解电信部门的活动相关情况。

1.3计费模块

缴费信息:

管理员可根据用户所交的话费进行计费,定期并反馈给用户,用户在缴费的时候可同时打印发票

1.4信息更新模块

(1)月话费管理:

管理员可对每月的话费信息进行逐条添加、更新和删除

(2)客户受理结果:

管理员可对每月的话费记录进行逐条添加、更新和删除

1.4.1数据流程图

 

1.4.2数据字典

(1)数据项

客户资料表

数据项名

类型

长度

别名

含义说明

kehuname

char

8

用户名

客户名

phoneno

char

11

电话号码

city

char

20

城市

packagename

char

20

套餐名称

phonepasswd

char

20

电话密码

收费员资料表

数据项名

类型

长度

别名

含义说明

cashierno

char

11

编号

收费员编号

cashiername

char

8

名字

收费员名字

age

char

8

年龄

passwd

char

20

密码

客户受理表

数据项名

类型

长度

别名

含义说明

kehuname

char

15

名字

客户名

phoneno

char

15

电话号码

admissibilityco

varchar

50

套餐

受理内容

admissibilitytime

Datatime

8

受理时间

 

通话信息

数据项名

类型

别名

长度

含义说明

callerid

char

11

来电号码

outgoingid

char

拨打号码

11

去电号码

talktime

int

8

通话时长

unitcost

int

8

单位费用

(2)数据结构

编号

数据结构名

属性

1

客户信息

姓名、手机号码、

账户余额、套餐名称、

身份证号

2

管理员信息

姓名、工作证号、

年龄、密码

3

通话信息

来电号码、去电号码

、通话时长、单位费

用、通话日期时刻、

通话费用

4

收费信息

收费员工作号、手机

号码、客户姓名、受

理时间

(3)数据流

编号

数据流名

输入

输出

1

登录申请

客户

用户信息

2

登录申请

管理员

管理员信息

3

查询资料

客户

资料信息

4

查询套餐

客户

套餐信息

5

客户受理情况

管理员

受理信息

(4)数据存储

数据存储名

输入数据流

输出数据流

客户信息

客户基本信息

客户信息

管理员信息

管理员基本信息

管理员基本信息

客户费用信息

客户各项费用消息

客户费用信息

客户缴费信息

客户缴费信息

客户缴费信息

(5)处理过程

处理过程名

输入数据流

输出数据流

说明部分

登陆查看

终端

客户信息

登陆查看

终端

管理员信息

客户受理

客户要求

客户受理情况

客户缴费

终端

客户

显示余额信息

客户信息

客户余额信息

显示套餐信息

客户信息

客户套餐信息

二、概念设计

2.1概述

根据需求将分析阶段形成的分析说明书,把用户的信息需求抽象为信息结构即概念模型的过程就是概念设计。

设计概念结构通常有自顶向下、自底向上、逐步扩张、混合策略4类方法。

其中最常用的策略是自底向上方法。

下面即是E-R图来描述现实世界的概念模式。

2.2系统E-R图

2.2.1实体及其属性图

(1)图为客户属性的实体E-R图。

 

 

(2)图为收费员的实体E-R图。

 

(3)图为通话记录的实体E-R图

 

 

(4)图为收费信息的实体E-R图

(5)图为客户受理信息的实体E-R图

 

2.2.2局部E-R图

(1)

 

(2)

2.2.3完整的实体联系图

2.3.创建各表

2.3.1创建客户资料表

客户资料表记录了客户的基本信息,设计图如下:

数据项名

数据类型

长度

允许空

客户姓名

char

10

联系电话

char

11

联系地址

char

20

套餐名称

char

20

手机号码

char

11

手机密码

char

10

创建收费员资料表

收费员资料表记录了收费员的基本信息,设计表如下:

数据项名

数据类型

长度

允许空

收费员编号

char

8

姓名

char

10

年龄

int

4

密码

char

10

创建应收款额表

应收款额表记录了客户的缴费及余额信息,设计表如下:

数据项名

数据类型

长度

允许空

手机号码

char

11

客户姓名

char

11

应收费用

int

10

余额

int

10

创建话费信息表

话费信息表记录了客户的基本话费信息,设计表如下:

数据项名

数据类型

长度

允许空

手机号码

char

11

客户姓名

char

15

通话费用

int

8

新业务费

int

8

费用合计

int

8

套餐名称

char

20

 

创建通话信息表

通话信息表记录着客户通话记录的信息,设计表如下:

数据项名

数据类型

长度

允许空

来电号码

char

11

去电号码

char

11

通话时长

int

8

通话时间

int

8

单位费用

int

8

2.3.2创建客户受理表

客户受理表记录了客户受理结果的基本信息,设计表如下:

数据项名

数据类型

长度

允许空

客户姓名

vachar

15

手机号码

char

15

受理内容

vachar

50

受理时间

Datatime

8

三、逻辑结构设计

3.1概述

逻辑设计的任务就是把概念结构设计阶段的设计好的基本E-R图转换为选用的DBMS产品所支持的数据模型项符合的逻辑结构设计。

设计逻辑结构时一般要分为两步进行如下图所示:

将概念模型装换为关系模型。

3.2.E-R图向关系模型的转换

A.实体及属性

客户:

{客户姓名,联系电话,联系地址,套餐名称}

应收款项:

{账户编号,手机号码,应收费用,余额}

话费信息库:

{手机号码,客户姓名,通话费用,新业务费,费用合计,套餐名称}

收费员:

{收费员编号,姓名,年龄}

客户受理:

{手机号码,客户姓名,受理内容,受理时间}

通话信息:

{手机号码,来电号码,去电号码,单位费用,通话时长,总费用}

B.联系的属性

使用:

{手机密码}

计费:

{密码}

C.根据转换规则将实体转换为关系模式

◆本实例中没有1:

1的关系

◆对于1:

n联系,将它们与n端的关系模式合并。

该关系模式中应加入1端的码和联系本身的属性。

客户:

{客户姓名,所在城市,套餐名称,手机号码,手机密码}

收费员:

{收费员编号,姓名,年龄,手机号码,密码}

对于m:

n的联系,必须单独转换为一个关系模式,属性由各实体的码和联系本身的属性组成,关系的码为组成联系各实体的码的组合。

支付:

{客户姓名,联系电话,收费员编码}

处理:

{手机号码,收费员编码}

D.电话计费系统的E-R图,转换为一下6个关系模式:

客户:

{手机号码,所在城市,套餐名称,客户姓名,手机密码}

收费员:

{收费员编码,姓名,年龄,手机号码,密码}

话费信息:

{手机号码,客户姓名,通话费用,费用合计,套餐名称}

客户受理:

{手机号码,收费员编码,客户姓名,受理内容,受理时间}

通话信息:

{手机号码,来电号码,去电号码,单位费用,通话时长,总费用}

关系模式的规范化

关系模式属于第三范式,每个非主属性都不传递函数依赖于主关系键。

在关系模式中,对于客户模式,手机号码为主属性,其余的为非主属性,非主属性不传递依赖于手机号码,属于第三范式。

对于收费员,收费员编号为主属性,姓名,年龄,手机号码,编号,密码为非主属性,它们不传递依赖于主关系键收费员编号,属于第三范式。

对于客户受理,手机号码和收费员编号为主属性,客户姓名,受理内容,受理时间为非主属性,手机号码,收费员编号,他们不依赖于手机号码、收费员编码,属于第三范式。

对于应收款项、话费信息、通话信息,它们的非主属性同样不传递依赖于主属性手机号码,都属于第三范式。

四、物理结构设计

4.1概述

通常关系数据库物理设计的内容主要包括:

为关系选择存取方法,建立存取路径,确定数据库存储结构,即确定关系,索引,聚日志,备份等数据的存储安排和存储结构确定系统配置实现语句。

4.2存储结构设计

对于电话计费管理系统的关系模式以及信息的处理分析:

(1)对于客户受理的信息等数据部需要经常查询,但是也需要经常更新。

例如今天一天的的客户受理情况等。

(2)对于收费员信息不需要经常更新。

(3)用户的信息需要经常更新,是隐私的不能被共享的。

(4)通话的信息不能被共享。

针对这些特点,可以做出以下设计:

为了提高系统性能,现根据应用情况将数据按照易变部分和稳定部分、经常存取部分和存取频率较低的部分分别在两个磁盘上存放。

同时,考虑到本系统是多用户的,为了提高效率,数据库的备份的数据和日志文件将保存在磁带中。

经常存取的部分:

客户受理表(收费员工作号,手机号码,客户姓名,收费日期,实收费用,套餐名称)

通话信息(来电号码,去电号码,通话时长,单位费用,通话日期,通话费用)

存取频率较低的部分:

收费员资料(姓名,工作证号,登录密码,所在单位)

客户资料(姓名,账户余额,身份证号,手机号码,套餐名称)

4.3存取路径设计

存取方法的选择:

对于经常查询的关系模型而言,用索引方式存储。

选择原则:

(1)一个或一组属性经常在查询中出现

(2)选择的索引属性量应该适当。

(3)属性经常在连接中出现。

对收费等的各个关系最经常的操作是查找,假设现有n个客户的信息,如果采取顺序查找,平均查找n/2次;建立B+树索引,则平均查找次数为B+树的层数log2n+1。

所以选择B+树作为索引,具体设计如下:

对以下经常在查询中出现的关系的码建立索引<说明:

下加横线部分表示关系的码>

客户受理表(收费员工作号,手机号码,客户姓名,收费日期,实收费用,套餐名称)

通话信息(来电号码,去电号码,通话时长,单位费用,通话日期,通话费用)

4.4建立索引

1、为表callinf(通话信息表)在phoneno(手机号)上建立唯一索引

CREATEUNIQUEINDEXkehu_callONkehu(phoneno)

执行界面如下图:

2、为表saccepting(客户受理表)在phoneno,cashierno(手机号)上建立唯一索引

CREATEUNIQUEINDEXkehu_saccONkehu(phoneno,cashierno)

执行界面如下图:

五、数据库实施

5.1概述

数据库实施阶段包括两项重要的工作,一是数据集的载入,另一项是应用程序的编码和调试。

Createdatabase电话计费系统/*创建数据库*/

On

(name=电话计费系统_data,

Filename=’I:

\电话计费系统data.mdf’,

Size=10,

Maxsize=50,filegrowth=5)

Logon

(name=电话计费系统_log,

Filename=’I:

\电话计费系统data.ldf’,

Size=5

Maxsize=25,

Filegrowth=5)

Createtablekehu/*创建客户表*/

(phonenochar(11)primarykey,

Kehunamechar(8)notnull,

Citychar(20),

Packagenamechar(20),

Phonepasswdchar(20)

);

Createtablecashier/*创建收银员表*/

(cashiernochar(11)primarykey,

Cashiernamechar(8)notnull,

Agechar(8),

Passwdchar(20)notnull,

);

Createtablecallchargeinf/*创建话费信息表*/

(phonechar(11)primarykey,

Kehunamechar(8),notnull

Callchargechar(20),

Operatingexpenseschar(20),

Packagenamechar(20),

Totalcostint

);

Createtablecustomersaccepting/*创建客户受理表*/

(phonenochar(11)notnull,

Cashiernochar(11)notnull,

Kehunamechar(8),

Admissibilitycontentchar(100),

Admissibilitytimechar(8),

Primarykey(phoneno,cashierno)

);

Createtableamountsreceivable/*创建收款表*/

(phonechar(11)primarykey,

Kenamechar(10),

Feesreceivableint,

Balancefloat(4)

);

Createtablecall-inf/*创建通话信息表*/

(phonenochar(11)primarykey,

Calleridchar(11),

Outgoingidchar(11),

Unitcostfloat(3),

Talktimechar(20)

);

5.2应用系统的开发(部分界面截图)

(1)数据库的建立

(2)向客户表中录入数据

 

(3)收银员表录入数据

(4)向客户受理表中录入数据

(5)向通话信息表中录入数据

(6)向收费信息表中录入数据

5.3数据库的备份

数据库的备份

如下图所示:

六、结论

通过这次课程设计,从设计需求分析,到各模块功能的设计及数据库设计,我对电话计费系统有了较为深入的了解,基本掌握了数据库设计的思想。

通过本次设计,对数据库系统概论这门课有了全新的认识。

课程设计是一种全面综合训练,是与课堂听讲、自学和练习相辅相成的必不可少的一个教学环节。

数据库这门课的课程设计的目的是要求我们进一步巩固课堂上所学习的知识点,深化理解数据库设计的步骤和方法,从而进一步培养学习兴趣,独立思考、分析问题、解决实际问题的动手能力。

经过这一周课程设计的时间,我受益匪浅,从一个整体上把握了一个数据库的设计方法,同时对于如何利用所学语言去连接数据库,从而操纵数据库。

并且在这次课程设计中,获得的少许成就还是比较满意的,希望以后自己能继续学习数据库,对数据库有更加深刻的理解。

参考文献

[1].苗雪兰,刘瑞新,宋歌.数据库系统原理及应用教程.机械工业出版社出版社,2007

[2].赵韶平,徐茂生,周勇华,罗海燕.PowerDesigner系统分析与建模.清华大学出版社,2009

客户受理

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 解决方案 > 营销活动策划

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1