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

上传人:b****5 文档编号:6149501 上传时间:2023-01-04 格式:DOCX 页数:17 大小:312.85KB
下载 相关 举报
通讯录管理系统数据库设计.docx_第1页
第1页 / 共17页
通讯录管理系统数据库设计.docx_第2页
第2页 / 共17页
通讯录管理系统数据库设计.docx_第3页
第3页 / 共17页
通讯录管理系统数据库设计.docx_第4页
第4页 / 共17页
通讯录管理系统数据库设计.docx_第5页
第5页 / 共17页
点击查看更多>>
下载资源
资源描述

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

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

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

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

通讯录管理系统数据库设计与实现

1需求简介(赵河南)

1.1功能概述

1.2数据要求

功能中涉及的数据项说明。

1.用分组基本信息(Admin):

包括分组号、分组名;

2.用户基本信息(Dormitory):

包括账号、密码、昵称、个性签名,这样可以方便分清用户记录的联系人;

3.联系人基本信息(linkman):

包括姓名、性别、关系、手机号、座机号、QQ、E-mail、生日、工作单位、地址、所属用户、所属分组;

1.3数据字典

数据项列表

数据项编号

数据项名

数据项含义

与其它数据项的关系

存储结构

别名

TXL-1

G_number

分组号

CHAR(10)

TXL-2

G_name

分组名

CHAR(20)

TXL-3

ID

所属用户

等同于账号ID

CHAR(10)

TXL-4

ID

账号

CHAR(10)

TXL-5

Nickname

昵称

CHAR(20)

TXL-6

Password

密码

CHAR(20)

TXL-7

Qianming

签名

CHAR(50)

TXL-8

L_number

联系人号

CHAR(100)

TXL-9

Name

姓名

CHAR(20)

TXL-10

Sex

性别

CHAR

(2)

TXL-11

Concern

关系

CHAR(10)

TXL-12

Phone

手机号

CHAR(11)

TXL-13

Landline

座机号

CHAR(10)

TXL-14

QQ

QQ号

CHAR(10)

TXL-15

Email

E-mail

CHAR(20)

TXL-16

Work

工作单位

CHAR(30)

TXL-17

Address

地址

CHAR(30)

TXL-18

Birthday

生日

Date

数据结构列表

数据结

构编号

数据结构名

数据结构

含义

组成

DS-1

Grouping

分组

G_number,G_name,ID,

DS-2

Worker

用户

ID,Nickname,Password,Qianming

DS-3

Linkman

联系人

L_number,Name,Sex,Concern,Phone,Landline,QQ,Email,Work,Address,Birthday,ID,G_number

DS-4

Own

拥有

ID,G_number,Name

2概念结构设计(刘江涛)

ER图(如果系统没有那么复杂,可以不需要画局部ER图)

属性请在ER图后单独说明。

账号

密码

联系人

姓名

QQ

地址

E-mail

手机号

性别

座机号

工作单位

关系

管理

昵称

生日

用户

组名

管理

组编号

个性签名

n

1

n

1

n

分组

拥有

m

拥有

联系人号

1

n

m

3逻辑结构设计(陈佳奇)

3.1将E-R图转换为关系模型

关系模型

图中实体所具有的属性为:

User(ID,Nickname,Password,Qianming);

Grouping(Group_number,,IDGroup_name)

Linkman(Name,Sex,Concern,QQ,Phone,Landline,Email,Work,Address,Birthday,);

Own(ID,G_number,L_number)

3.2数据库模式设计(袁向阳)

1.用户表信息表:

Worker

属性名

数据类型

含义

是否是主属性或外键

完整性

ID

Char(10)

账号

PK

Nickname

Char(20)

昵称

NOTNULL

Password

Char(20)

密码

NOTNULL

Qianming

Char(50)

个性签名

2.联系人信息表:

Linkman

属性名

数据类型

含义

是否是主属性或外键

完整性

L_number

Char(10)

联系人号

PK

Name

Char(20)

姓名

Sex

Char

(2)

性别

Concern

Char(20)

关系

Phone

Char(11)

手机号

Landline

Char(10)

座机号

QQ

Char(10)

QQ号

Email

Char(20)

E-mail

Work

Char(30)

工作单位

Address

Char(30)

地址

Birthday

Date

生日

3.分组信息表:

Grouping

属性名

数据类型

含义

是否是主属性或外键

完整性

G_number

Char(10)

分组号

PK

G_name

Char(10)

分组名

NOTNULL

4.拥有信息表:

Own

属性名

数据类型

含义

是否是主属性或外键

完整性

G_number

Char(10)

分组号

PK

ID

Char(10)

用户ID

Pk

L_number

Char(100)

联系人号

Pk

3.3用户子模式设计(袁向阳)

(可选)

编号

用户子模式(View)

作用(共性:

提供数据保密和安全保护机制)

/或:

子模式结构

001

用户分组显示

显示每个分组的联系人

002

联系人查询

快速查找的联系人

003

用户账号管理

修改昵称、密码、个性签名

004

联系人的修改

修改联系人信息

005

联系人的删除

删除联系人信息

006

联系人的添加

添加新的联系人

007

分组的创建

创建分组

008

分组的修改

修改分组

009

分组的删除

删除分组

4物理结构设计(侯琦瑞)

4.1存储结构

随着用户的增多,系统数据也会越来越多,所以要两个比较大的盘驱分别建立一个主数据文件和一个日志文件就可以了。

4.2索引

由于基本表Worker,linkman,Grouping的主码Name,ID,G_number经常在查询条件和连接操作的连接条件中出现,且它们的值唯一,考虑在两个属性上建立唯一性索引;

5实施(李玉舟)

5.1建立数据库

createdatabaseTXL

on

(name=TXL,

='D:

\通讯录数据库\TXL.mdf',

size=100MB,

maxsize=UNLIMITED,

=50MB)

logon

(name=XSGL_log,

='E:

\通讯录数据库\TXL_log.ldf',

size=3,

maxsize=50MB,

=2MB)

5.2建立基本表

SQL语句或者图形界面截图。

--

(1)创建用户表Worker

createtableWorker

(IDchar(10)primarykey,

Nicknamechar(20)notnull,

Passwordchar(20)notnull,

Qianmingchar(50));

--

(2)创建分组Grouping

createtableGrouping

(G_numberchar(10)primarykey,

G_Namechar(20)notnull);

 

--(3)创建联系人表Linkman

createtableLinkman

(Namechar(20)primarykey,

Sexchar

(2)check(Sex='男'orSex='女')DEFAULTnull,

Concernchar(10)DEFAULTnull,

Phonechar(11)DEFAULTnull,

Landlinechar(10)DEFAULTnull,

QQchar(11)DEFAULTnull,

E_mailchar(30)DEFAULTnull,

Workchar(20)DEFAULTnull,

Addresschar(30)DEFAULTnull,

BirthdaydateDEFAULTnull);

--(4)创建拥有表Own

createtableOwn

(IDchar(10),

G_numberchar(10),

Namechar(20),

primarykey(ID,G_number,Name),

FOREIGNKEY(ID)REFERENCESWorker(ID),

FOREIGNKEY(G_number)REFERENCESGrouping(G_number),

FOREIGNKEY(Name)REFERENCESLinkman(Name));

5.3建立视图

6功能实现(查孟博)

6.1注册用户

InsertintoWorker(ID,Nickname,password,Qianming)

Values('00000','用户1','00000','我的联系人我做主!

');

6.2管理用户(修改昵称、密码、个性签名)

UpdateWorker

SetNickname='超级用户',Password='11111',Qianming='常联系'

WhereID='00000';

6.3创建分组

InsertintoGrouping(G_number,G_name)

Values('0000000000','firends');

InsertintoGrouping(G_number,G_name)

Values('0000000001','family');

6.4修改分组名

updateGrouping

setG_name='myfirends'

whereG_number='0000000000';

6.5删除分组

deletefromGrouping

whereG_number='0000000001';

6.5添加联系人功能(功能)

InsertintoLinkman(L_number,Name,Sex,Concern,QQ,Phone,Landline,E_mail,Work,Address,Birthday)

Values('0000000001','刘江涛','男',null,'1234567891','12345678901',null,null,null,null,null);

InsertintoLinkman(L_number,Name,Sex,Concern,QQ,Phone,Landline,E_mail,Work,Address,Birthday)

Values('0000000002','查孟博','男',null,'1234567892','12345678902',null,null,null,null,null);

InsertintoLinkman(L_number,Name,Sex,Concern,QQ,Phone,Landline,E_mail,Work,Address,Birthday)

Values('0000000003','赵河南','男',null,'1234567893','12345678903',null,null,null,null,null);

InsertintoLinkman(L_number,Name,Sex,Concern,QQ,Phone,Landline,E_mail,Work,Address,Birthday)

Values('0000000004','侯琦瑞','男',null,'1234567894','12345678904',null,null,null,null,null);

InsertintoLinkman(L_number,Name,Sex,Concern,QQ,Phone,Landline,E_mail,Work,Address,Birthday)

Values('0000000005','袁向阳','男',null,'1234567895','12345678905',null,null,null,null,null);

InsertintoLinkman(L_number,Name,Sex,Concern,QQ,Phone,Landline,E_mail,Work,Address,Birthday)

Values('0000000006','李玉舟','男',null,'1234567896','12345678906',null,null,null,null,null);

InsertintoLinkman(L_number,Name,Sex,Concern,QQ,Phone,Landline,E_mail,Work,Address,Birthday)

Values('0000000007','陈佳奇','男',null,'1234567897','12345678907',null,null,null,null,null);

6.6联系人归属

InsertintoOwn(ID,G_number,L_number)

values('00000','0000000000','0000000001');

InsertintoOwn(ID,G_number,L_number)

values('00000','0000000000','0000000002');

InsertintoOwn(ID,G_number,L_number)

values('00000','0000000000','0000000003');

InsertintoOwn(ID,G_number,L_number)

values('00000','0000000000','0000000004');

InsertintoOwn(ID,G_number,L_number)

values('00000','0000000000','0000000005');

InsertintoOwn(ID,G_number,L_number)

values('00000','0000000000','0000000006');

InsertintoOwn(ID,G_number,L_number)

values('00000','0000000000','0000000007');

6.7修改联系人功能

updateLinkman

setName='侯启瑞'

whereL_number='0000000004';

6.8删除联系人功能

deletefromOwn

whereL_number='0000000004';

deletefromLinkman

whereL_number='0000000004';

6.9关键字查询联系人功能

select*

fromLinkman

whereL_number='0000000001';

6.10条件查询联系人功能

selectL.Name,Phone

fromLinkmanL,Own,GroupingG

whereL.L_number=Own.L_numberandOwn.G_number=G.G_numberandG_name='myfirends';

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

当前位置:首页 > 求职职场 > 简历

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

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