通讯录信息管理系统大数据库设计.docx

上传人:b****1 文档编号:1715747 上传时间:2023-05-01 格式:DOCX 页数:47 大小:2.39MB
下载 相关 举报
通讯录信息管理系统大数据库设计.docx_第1页
第1页 / 共47页
通讯录信息管理系统大数据库设计.docx_第2页
第2页 / 共47页
通讯录信息管理系统大数据库设计.docx_第3页
第3页 / 共47页
通讯录信息管理系统大数据库设计.docx_第4页
第4页 / 共47页
通讯录信息管理系统大数据库设计.docx_第5页
第5页 / 共47页
通讯录信息管理系统大数据库设计.docx_第6页
第6页 / 共47页
通讯录信息管理系统大数据库设计.docx_第7页
第7页 / 共47页
通讯录信息管理系统大数据库设计.docx_第8页
第8页 / 共47页
通讯录信息管理系统大数据库设计.docx_第9页
第9页 / 共47页
通讯录信息管理系统大数据库设计.docx_第10页
第10页 / 共47页
通讯录信息管理系统大数据库设计.docx_第11页
第11页 / 共47页
通讯录信息管理系统大数据库设计.docx_第12页
第12页 / 共47页
通讯录信息管理系统大数据库设计.docx_第13页
第13页 / 共47页
通讯录信息管理系统大数据库设计.docx_第14页
第14页 / 共47页
通讯录信息管理系统大数据库设计.docx_第15页
第15页 / 共47页
通讯录信息管理系统大数据库设计.docx_第16页
第16页 / 共47页
通讯录信息管理系统大数据库设计.docx_第17页
第17页 / 共47页
通讯录信息管理系统大数据库设计.docx_第18页
第18页 / 共47页
通讯录信息管理系统大数据库设计.docx_第19页
第19页 / 共47页
通讯录信息管理系统大数据库设计.docx_第20页
第20页 / 共47页
亲,该文档总共47页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

通讯录信息管理系统大数据库设计.docx

《通讯录信息管理系统大数据库设计.docx》由会员分享,可在线阅读,更多相关《通讯录信息管理系统大数据库设计.docx(47页珍藏版)》请在冰点文库上搜索。

通讯录信息管理系统大数据库设计.docx

通讯录信息管理系统大数据库设计

工业应用技术学院

课程设计报告

题目:

通讯录信息管理系统数据库设计

姓名:

院(系):

信息工程学院

专业班级:

12级计算机科学与技术

学号:

指导教师:

 

成绩:

 

时间:

2015年9月8日至2015年9月18日

摘要

随着计算机技术的不断发展,网络数据库技术在社会生活中日益重要起来,Web开发作为一种比较流行的技术也开始得到了很多人的支持和喜爱。

在现代社会中,数据库在网络技术中已经成为了不可分割的重要组成部分。

在网络技术的日趋发展中,也带动了一系列的新鲜事物出现。

通讯录信息管理系统就是在这一社会背景下出现的。

本系统使用了MySQL数据库技术、JSP技术、Java语言、MyEclipse开发工具,以及Tomcat服务器等进行了系统的实现。

本系统具有快速存储联系人大量信息、多条件检索联系人信息、修改个人资料、添加删除联系人等功能。

另外,本系统是利用数据库技术在网络上建立的,在网络越来越便利的,我们可以随时随地的在线查找、更新通讯录,同时也可以降低通讯录在移动设备端丢失的概率。

关键词:

通讯录信息管理系统;MySQL;数据库

1概述1

1.1系统背景分析1

1.2设计的目的和意义1

1.3国外通讯录发展现状1

1.3.1国通讯录发展现状1

1.3.2国外通讯录发展现状2

1.4系统设计思想2

1.5课程设计结构2

2系统需求分析3

2.1系统功能需求分析3

2.1.1总体功能需求分析3

2.1.2系统前台功能需求4

2.1.3系统后台功能需求4

2.1.4数据流图4

2.2数据需求分析5

2.2.1数据分析5

3数据库概念结构设计6

4数据库逻辑结构设计8

4.1把E-R图转化为关系模式8

4.2实体间的联系8

4.3关系规化8

5物理结构设计9

5.1表结构的设计9

5.2视图的设计10

6数据库的实现11

6.1创建数据库11

6.2创建表和主键约束11

6.3创建约束12

6.4输入数据13

6.5创建索引14

6.6创建视图14

7应用系统的实现15

7.1功能的实现15

心得体会29

参考文献30

附录31

1概述

1.1系统背景分析

随着改革开发的进一步深入,科学技术的发展越来越开,也逐渐改变着人们的日常生活。

固定与手机已经替代了曾经的,人与人之间的联系也愈加频繁和紧密,中的信息也涉及到了生活中的方方面面。

移动通信逐渐成为通信领域的主流。

在这种环境下,人们可以在任何地方、任何时间享受自由通信,通话质量几乎不受电磁波等外界环境的影响,而高效便捷的通讯录是保持良好通信的基础。

传统的通讯录是把联系人信息写到纸质材料上,这种通讯录携带不方便,而且修改、查询都会增加时间成本。

还有一种是名片夹通讯录,这种通讯录也有较多的缺点。

名片夹容量有限,不宜批量、长时间保存。

现在比较流行的通讯录是我们的手机簿。

手机容量较大,而且可以长时间保存。

但是手机存储界面单一,存储单元的信息也较少。

一旦手机丢失或损坏,通讯录也就无法找回。

因此,开发一个免费的、功能丰富的基于网络存储的通讯录管理系统是非常必要的。

1.2设计的目的和意义

现在社会网络随处可见。

我们可以利用数据库技术在网络上建立一个WEB服务系统。

这种系统能够固定存储在网络服务器上,专门用于记录用户联系人的信息。

随着网络的普及和服务需求的增长,现如今的移动设备功能也是越来越多,而且大部分都支持互联网的接入,这样我们便可以随时随地的在线查找、更新通讯录,并且在此基础上还可以在IOS、Android等系统上开发移动客户端。

移动设备上的客户端与网页上更新存储相比,不仅可以提高信息检索的速度,而且没有网络复杂环境的影响。

此外客户端还会定期更新信息,保持手机和网络信息的同步。

1.3国外通讯录发展现状

1.3.1国通讯录发展现状

国的有社交短信的Kik、QQ通讯录、360通讯录等。

移动通讯录是一种利用移动互联网来实现通讯录信息同步更新和备份的服务。

这种通讯录有:

友录通讯录、火种通讯录等。

基于手机和的同步通讯录有人人同步免费版、QQ手机同步。

总的来看,这些通讯录功能丰富,多智能化。

有的还有通讯、留言等功能,为个人通讯提供了方便。

1.3.2国外通讯录发展现状

国外的网络通信技术发展的较为成熟,目前各类产品的发展、通讯方式的丰富使得通讯录产品以不同的方式涌现出来,有基于手机的、有基于个人电脑的、有无线方式接入的、有WEB方式接入的等等。

例如目前主流的通讯录应用主要有移动PIM,PIM业务是指客户将移动终端或其他客户端中的信息以无线或有线方式与网络服务器保持一致,并能用多种终端、多种接入手段来管理个人信息的业务。

PIM业务为用户提供了统一、便捷查询通讯录、安排等个人信息的服务,使用户可以使用移动终端、计算机、PDA、网络服务器设备,通过互联网、移动网络方式来管理或同步通讯录、日程安排、事件提醒、子、铃声图片、资料文档等个人信息。

1.4系统设计思想

对于典型的数据库管理系统,尤其是通讯录这样的存储信息特别大的网络管理系统,必须要满足使数据库方便、操作数据灵活等要求。

本系统在设计时应满足以下几个目标:

(1)采用良好的人机交互界面设计模式,界面个性、友好,信息查询灵活、方便,数据存储准确、安全可靠;

(2)快速存储联系人的大量信息;

(3)用户可以多条件进行信息检索;

(4)用户登录后台系统后可以修改自己的基本资料;

(5)实现添加、删除联系人类别的功能;

(6)实现联系人类别排行功能,以方便用户了解联系人信息;

(7)对输入的数据,系统进行严格的数据检验,并有合理的信息提示,尽可能排除人为错误。

1.5课程设计结构

本课程设计容包括:

概述、需求分析、概念结构设计、数据库逻辑结构设计、物理结构设计、数据库的实现以及应用系统的实现等等。

着重描述了通讯录的组成与结构以及数据库的设计,阐述了系统的设计方案、实现方法以及所采用的开发工具和相关技术,另外,重点剖析了部分环节的开发过程。

2系统需求分析

系统关键技术确定后,需要对项目的功能需求进行详细的需求分析,清楚地了解到该项目所包含的功能。

需求分析报告是对要解决的问题进行详细的分析,弄清楚问题的要求,包括需要输入什么数据,要得到什么数据,估计软件风险和评估项目代价,是软件生存周期中的最关键的一步,也是最困难的一步,是建立在软件开发的基础上。

2.1系统功能需求分析

2.1.1总体功能需求分析

经过对各种通讯录系统的考察、分析,要求本系统具有以下功能:

(1)统一友好的操作界面,保证系统的易用性,方便用户的操作;

(2)具备联系人信息的显示功能,方便用户及时查看联系人信息;

(3)联系人信息管理功能,用户可以添加、删除联系人信息;

(4)个性化的联系人分组,方便用户分类检索联系人信息;

(5)全面的后台管理功能,以方便管理员对用户信息进行管理。

系统总体功能结构图如图2.1。

图2.1系统管理功能结构图

2.1.2系统前台功能需求

(1)首页信息

显示开发的信息,包括:

系统开发开发环境、主要采用的技术、系统开发时间

(2)分组信息

可以查看在当前数据库通讯录系统中的总的分组情况。

(3)联系人信息

可以查看当前权限下通讯录中所有的联系人的全部信息,并且可以按照不同的条件(比如、出生日期等),对联系人进行查找,并且可以查看联系人的具体信息(包括个人照片等)。

(4)后台登录

可以点击后台登录,对当前用户权限下的通讯录进行后台管理。

2.1.3系统后台功能需求

(1)分组信息管理

包括添加分组信息和分组信息管理两个模块,可以添加分组和对已经建立的分组进行编辑和删除。

(2)联系人信息管理

包括添加联系人和联系人信息管理两个模块,可以新增加联系人和对已经记录的联系人信息进行编辑和删除。

(3)系统管理

包括修改密码和退出系统两个模块,可以完成对系统的密码进行修改和退出本系统两个操作。

2.1.4数据流图

(1)对于本系统的前台页面数据流图如图2.2所示。

图2.2前台页面数据流图

(2)对于本系统的后台登录的数据流图如图2.3所示。

图2.3后台登录的系统流图

2.2数据需求分析

2.2.1数据分析

对于本系统的数据库的需求而言,由于其主要是用于信息的存储、更新和查询等。

因此,需要分析该系统功能所隐含的对数据应用的需求,从而确定数据库的结构。

(1)对用户信息建立数据表,其中的数据项包括登录账号、登录密码等。

(2)对分组信息建立数据表,其中的数据项包括分组编号、分组名等。

(3)对联系人信息建立数据表,其中的数据项包括所在分组、、性别、出生年月、号、邮编、家庭、手机号、qq、地址、职业、公司名称、地址、个人照片、备注信息等。

3数据库概念结构设计

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

根据用户需求设计数据库的概念,数据模型。

我们首先要将现实世界中的客观对象首先抽象为不依赖任何具体机器的信息结构,这种信息结构不是DBMS支持的数据模型,而是概念级别的模型。

然后再把概念模型转换为具体机器上DBMS支持的数据模型。

 

概念模型是对现实世界的抽象和概括。

它真实,充分地反映了现实世界中的事物和事物之间的联系,能满足用户对数据的处理要求。

由于其简洁、明晰、独立于机器,很容易理解,因此可以用概念模型和不熟悉计算机的用户交换意见,使用户能积极参与数据库的设计工作。

概念模型易于变动,还很容易向各种数据模型转换。

(1)管理员实体-属性图。

图3.1管理员实体-属性图

(2)用户实体-属性图。

图3.2用户实体-属性图

(3)分组实体-属性图。

图3.3分组实体-属性图

(4)联系人实体-属性图。

图3.4联系人实体-属性图

(5)数据库总体设计详细E-R图

图3.5数据库总体设计详细实体-关系图

4数据库逻辑结构设计

4.1把E-R图转化为关系模式

根据第三章概念结构设计得出的E-R图,我们可以得出系统中涉及的主要实体有四个,其结构如下:

(1)管理员(用户名,密码,权限)

(2)用户(用户名,密码,权限)

(3)分组(分组号,分组名,所属权限)

(4)联系人(联系人ID,所属分组,,性别,生日,,邮编,家庭,移动,QQ,电子,职业,公司名称,住址,照片,备注,所属权限)

4.2实体间的联系

数据库通讯录信息管理系统实体之间有6个联系,其关系如下:

(1)管理员与用户的关系是1:

N的关系;

(2)管理员与分组的关系是1:

N的关系;

(3)管理员与联系人的关系是1:

N的关系;

(4)用户与分组的关系是1:

N的关系;

(5)用户与联系人的关系是1:

N的关系;

(6)分组与联系人的关系是1:

N的关系。

4.3关系规化

(1)确定数据依赖;

(2)对于各关系模式间的数据依赖进行极小化处理,消除冗余关系;

(3)按照数据依赖与规化理论对关系模式逐一进行分析;

(4)按照式优化每一关系模式,对关系模式的进一步分解或合并;

(5)最终规到3NF式为:

<1>用户表(用户名,密码,权限)

<2>分组表(分组号,分组名,所属权限)

<3>联系人信息表(联系人ID,所属分组,,性别,生日,,邮编,家庭,移动,QQ,电子,职业,公司名称,住址,照片,备注,所属权限)

5物理结构设计

5.1表结构的设计

(1)管理员和用户表结构设计。

表5.1管理员表结构设计

中文名

字段名

数据类型

显示宽度

是否为空

是否主键

约束条件

默认值

用户名

username

varchar

20

不允许为空

登录密码

password

varchar

20

默认约束

888888

权限

copyright

int

10

不允许为空

(2)用户表结构设计

表5.2用户表结构设计

中文名

字段名

数据类型

显示宽度

是否为空

是否主键

约束条件

默认值

用户名

username

varchar

20

不允许为空

登录密码

password

varchar

20

默认约束

888888

权限

copyright

int

10

不允许为空

(3)分组表结构设计

表5.3分组表结构设计

中文名

字段名

数据类型

显示宽度

是否为空

是否主键

约束条件

默认值

分组号

groupClassId

int

11

不允许为空

分组名

groupClassName

varchar

20

允许为空

所属权限

groupCopyRight

int

11

不允许为空

(4)联系人表结构设计

表5.4联系人表结构设计

中文名

字段名

数据类型

显示宽度

是否为空

是否主键

约束条件

默认值

联系人id

memberId

int

11

不允许为空

所属分组

groupObj

int

11

外键约束

name

varchar

20

允许为空

性别

sex

varchar

2

默认约束

出生年月

birthDate

date

10

允许为空

cardNumber

varchar

30

允许为空

邮编

postcode

varchar

20

检查约束

家庭

homeTelephone

varchar

20

允许为空

移动

mobilePhone

varchar

20

检查约束

QQ

qq

varchar

20

允许为空

续表5.4联系人表结构设计

电子

email

varchar

40

检查约束

职业

zhiye

varchar

20

允许为空

公司名称

gongsimingcheng

varchar

20

允许为空

住址

address

varchar

100

允许为空

照片

photo

varchar

50

允许为空

注释

memo

varchar

200

允许为空

所属权限

copyright

int

11

不允许为空

5.2视图的设计

(1)GroupClass视图

作用:

方便查对分组进行操作。

(2)MemberInfo视图

作用:

方便对联系人的信息进行操作。

6数据库的实现

6.1创建数据库

--创建数据库addressinfodb

usemaster

go

ifexists(select*fromsysdatabaseswherename=addressinfodb)

dropdatabaseaddressinfodb

Execxp_cmdshell'mkdirD:

\project'

createdatabaseaddressinfodb

useaddressinfodb

go

6.2创建表和主键约束

(1)创建用户表及管理员表

DROPTABLEIFEXISTS'admin';

CREATETABLE'admin'(

'username'varchar(20)NOTNULL,

'password'varchar(20)DEFAULTNULL,

'copyright'int(10)NOTNULL,

PRIMARYKEY('username')

)ENGINE=InnoDBDEFAULTCHARSET=utf8;

(2)创建分组表

DROPTABLEIFEXISTS't_groupclass';

CREATETABLE't_groupclass'(

'groupClassId'int(11)NOTNULLAUTO_INCREMENT,

'groupClassName'varchar(20)DEFAULTNULL,

'groupCopyRight'int(11)NOTNULL,

PRIMARYKEY('groupClassId')

)ENGINE=InnoDBAUTO_INCREMENT=4DEFAULTCHARSET=utf8;

(3)创建联系人表

DROPTABLEIFEXISTS't_memberinfo';

CREATETABLE't_memberinfo'(

'memberId'int(11)NOTNULLAUTO_INCREMENT,

'groupObj'int(11)DEFAULTNULL,

'name'varchar(20)DEFAULTNULL,

'sex'varchar

(2)DEFAULTNULL,

'birthDate'varchar(10)DEFAULTNULL,

'cardNumber'varchar(30)DEFAULTNULL,

'postcode'varchar(20)DEFAULTNULL,

'homeTelephone'varchar(20)DEFAULTNULL,

'mobilePhone'varchar(20)DEFAULTNULL,

'qq'varchar(20)DEFAULTNULL,

'email'varchar(40)DEFAULTNULL,

'zhiye'varchar(20)DEFAULTNULL,

'gongsimingcheng'varchar(20)DEFAULTNULL,

'address'varchar(100)DEFAULTNULL,

'photo'varchar(50)DEFAULTNULL,

'memo'varchar(200)DEFAULTNULL,

'copyright'int(11)NOTNULL,

PRIMARYKEY('memberId'),

KEY'FKE439A73350F5638A'('groupObj'),

CONSTRAINT'FKE439A73350F5638A'FOREIGNKEY('groupObj')REFERENCES't_groupclass'('groupClassId')

)ENGINE=InnoDBAUTO_INCREMENT=4DEFAULTCHARSET=utf8;

6.3创建约束

(1)用户表的默认约束

altertabledbo.admin

addconstraintDF_password

default('888888')forpassword

(2)创建联系人表的外键约束

altertabledbo.t_memberinfo

addconstraintFK_groupObj

foreignkey(groupObj)

referencesdbo.t_groupclass('groupClassId')

(3)创建联系人表的检查约束

altertabledbo.t_memberinfo

addconstraintCK_postcode

check(len(postcode)=6)

(4)创建联系人表的检查约束

altertabledbo.t_memberinfo

addconstraintCK_email

check(emaillike'%%')

(5)创建联系人表的默认约束

altertabledbo.t_memberinfo

addconstraintDF_sex

default('男')forsex

(6)创建联系人表的检查约束

altertabledbo.t_memberinfo

addconstraintCK_mobilePhone

check(len(mobilePhone)=11)

6.4输入数据

(1)向用户表中插入数据

INSERTINTO'admin'VALUES('a','aaaaaa','1');

INSERTINTO'admin'VALUES('b','bbbbbb','2');

INSERTINTO'admin'VALUES('c','cccccc','3');

INSERTINTO'admin'VALUES('d','dddddd','4');

(2)向分组表中插入数据

INSERTINTO't_groupclass'VALUES('1','家人','2');

INSERTINTO't_groupclass'VALUES('2','朋友','2');

INSERTINTO't_groupclass'VALUES('3','同学','3');

(3)向联系人表中插入数据

INSERTINTO't_memberinfo'VALUES('1','2','小芳','女','1992-06-09','2','610059','9','','51304122','liuxiaofang126.','淘宝店主','小芳服装店','二仙桥','upload/a6508b9b-cd71-4e7f-9600-89c78538f2f4.jpg','测试','2');

INSERTINTO't_memberinfo'VALUES('2','1','小王','男','2004-06-30','0','348899','7666646','','5555555','5555555qq.','学生','学校','农村','upload/e40b0640-c1fe-44cb-9971-c1639caee77f.jpg','fifj','2');

INSERTINTO't_memberinfo'VALUES('3','3','小','男','2005-09-15','2','473943','5739583','','434793194','434793194qq.','服务员','餐厅','小吃街',null,'。

','3');

6.5创建索引

(1)创建联系人表的索引

createindexFKE439A73350F5638A

ont_memberinfo(groupObj);

6.6创建视图

(1)创建GroupC

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

当前位置:首页 > 初中教育 > 语文

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2