数据库课程设计客户信息管理系统实验报告事务与并发控制.docx

上传人:b****6 文档编号:3342407 上传时间:2022-11-21 格式:DOCX 页数:25 大小:23.44KB
下载 相关 举报
数据库课程设计客户信息管理系统实验报告事务与并发控制.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

数据库课程设计客户信息管理系统实验报告事务与并发控制

 

《客户信息管理系统》实验报告

实验序号:

实验项目名称:

事务与并发控制

 

学号姓名专业、班

 

实验地点指导教师实验时间

 

一、实验目的及要求

 

二、实验设备(环境)及要求

 

SQLServer2000、WindowXP、PowerDesigner12.0

 

三、实验内容与步骤

(一)、客户资源管理系统需求分析

1、调查了解学籍管理系统的初步需求

企业的发展离不开客户对企业的认知度、美誉度、忠诚度,为了提高客户满意度必须对客户资源进行科学有效的管理。

客户资源管理系统对客户信息(包括潜在的和已有的客户)进行有效管理和应用,并通过适当的步骤来构建和维护有价值的客户关系。

 

客户资源管理系统主要功能表

序号

功能名称

功能说明

1

客户信息管理

实现客户的增加、删除、修改和查询、打印,并提供客户

分开查询、管理功能

2

市场活动管理

针对各部门的活动主题、内容、类型、客户及负责员工进

行合理安排

3

客服管理

查看客户的服务请求,管理客服人员的服务内容、类型、

处理等级以及客户的反馈信息和满意程度

4

日程提醒

对未来事件的主题、日期、内容、处理状态进行维护,以

保证及时联系重要客户

5

数据管理

导入导出数据,数据备份与恢复

6

系统管理

包括代码管理、员工管理和账号管理

 

3、根据系统的初步需求,分析设计顶层数据流图

(1)、1层数据流图如下图所示:

 

员工基本信息

管理人员

代码

客户资料

客户请求

客服信息

0

处理情况

客户信息管理

市场活动信息

客户服务记录

日程提醒信息

 

员工

 

2

 

(2)、1层数据流图如下图所示:

 

员工信息

 

员工信息

代1

码系统管理

代码

 

2

客户管理

 

客户资料

客户资料

 

员工

 

日程提醒

管理人员

日程提醒信息

系统管理

日程基本信息

5

日程管理

4

客服管理

3

市场活动管理

客户服务记录

信询

息统

计活

客户服务记录

条动

件安

客服信息实体

 

市场活动信息

 

3

 

(3)、2层数据流图如下图所示:

管理员

客户信息

信息报表

查询条件

客户信息

客户信息

2.2

查询条件

2.1

信息查询

信息报表

信息录入

录入信息

员工

 

管理员

市场活动信息

信息报表

查询条件

市场活动信息

客户信息

3.2

查询条件

3.1

查询

信息报表

活动信息管理

员工

 

4、制定整理数据字典

(1)、分析数据流图,确定数据流的描述

在客户管理数据流图中,包含“客户资料”、“变更客户资料要求”、“删除客户资料要求”、“新增的客户信息”、“修改后的客户资料”等数据流。

◆数据流描述

 

数据流卡

编号:

F1名称:

客户资料

 

来源:

客户信息

去向:

客户信息显示

数据结构:

客户编号、客户名称、客户等级、客户状态

说明:

某公司的全部客户资料

 

4

 

数据流卡

编号:

F2

名称:

变更客户资料要求

来源:

管理员输入

去向:

客户信息查询

数据结构:

客户编号、客户名称、客户等级、客户状态

说明:

某次要变动的客户资料要求

 

数据流卡

编号:

F3

名称:

删除客户资料要求

来源:

管理员输入

去向:

删除客户资料

数据结构:

客户资料

说明:

某次要删除的客户资料要求

 

数据流卡

编号:

F4

名称:

新增的客户信息

来源:

去向:

数据结构:

说明:

某次添加的新的客户信息

 

数据流卡

编号:

F7名称:

修改后的客户资料

来源:

去向:

数据结构:

说明:

某次修改后的客户资料

 

(2)、分析数据流图,确定数据存储的描述

在客户管理数据流图中,包含“客户资料”等数据存储,描述其数据存储。

①数据存储:

客户资料

说明:

保存各个客户的资料信息

流入数据流:

新增的客户资料、修改后的客户资料流出数据流:

客户资料显示

 

5

 

组成:

客户编号、客户姓名、客户等级

存取方式:

随机存取

(3)、分析数据流图,确定数据项的描述◆数据项的定义:

数据项编号:

I01-01

 

数据项名称:

客户编号

别名:

客户编码

 

简述:

客户的顺序代号

类型:

数字

 

数据项编号:

I01-02

 

数据项名称:

客户姓名

别名:

客户名称

 

简述:

客户的称呼

 

类型:

文本

 

数据项编号:

I01-03

 

数据项名称:

所属行业

 

别名:

简述:

客房的行业

 

类型:

文本

 

数据项编号:

I01-04

 

数据项名称:

所在地区

 

别名:

简述:

客户的居住地

类型:

文本

 

数据项编号:

I01-05

 

数据项名称:

电话号码

 

别名:

 

6

 

简述:

客户的电话号码

类型:

数字

 

数据项编号:

I01-09

 

数据项名称:

客户等级

别名:

 

简述:

客户的重要性

类型:

文本

(4)、分析数据流图,确定处理过程的描述

在客户管理数据流图中,包含“客户信息查询”、“增加客户信息”、“修改客户信息”、

“删除客户信息”、等处理过程,描述它们的处理流程。

①处理过程:

增加客户信息查询

说明:

录入一个客户的资料信息

输入:

客户编号、姓名

输出:

客户基本信息

处理:

在“客户信息”数据存储中增加一个客户的基本信息

②处理过程:

修改客户信息

说明:

录入一个客户的基本信息

输入:

客户编号、姓名

输出:

客户基本信息

处理:

在“客户基本信息”数据存储中修改一个客户的考试成绩

③处理过程:

客户信息查询

说明:

输入要查询的客户信息条件

输入:

管理人员

输出:

客户信息显示

处理:

输出某个客户的信息

④处理过程:

删除客户信息

说明:

删除某个客户的信息

输入:

客户编号、姓名

输出:

处理:

在“客户信息”数据存储中少了一个客户的信息

二、客户信息管理概念结构设计

①在客户资料管理中抽象实体,实体的码用下划线标出

★客户实体的属性为:

{客户编号、姓名、所属行业、电话、法人、经营范围、所在地区、

客户等级、客户状态、传真}

★管理员实体的属性为:

{管理员编号、管理员姓名、密码}

★员工实体的属性为:

{员工编号、部门编号、员工名称、密码}

★部门实体的属性为:

{部门编号、部门名称}

★客服信息实体的属性为:

{服务编号、客户名称、联系人、受理方式、处理状态、处理部

 

7

 

门编号、服务内容、处理日期、客户满意程度、客户反馈信息}

★市场活动信息实体的属性为:

{活动编号、活动主题、负责员工编号、客户编号、部门编

号、联系时间、活动时间、活动类型、活动方式、活动内容}

(3)、确定实体间的关系,设计E-R图

为了简化设计,使用以下约束:

★一个管理员只管理一个部门,一个管理员可以管理多个多个员工

★一个客户只受一个员工服务,一个员工可以服务多个客户

★一个员工只能属于一个部门,一个部门可以有多个员工

①在客户管理局部应用

根据客户管理中的客户管理的局部应用,确定各实体间的联系

★一个客户必须被一个员工服务,而一个员工可以为多个客户服务,因此客户与员工的

所在联系为n:

1联系;

★一个员工必须隶属于一个部门,一个部门包含多个员工,因此部门与员工的隶属联系是

1:

n联系;

★根据约定一个部门只有一个管理人员,一个管理人员只担任一个部门的经理,因此部门

与经理的管理联系时1:

1联系

(4)、合并分E-R图,解决冲突,消除冗余,设计基本E-R图,如下图所示:

 

8

 

姓名

所在地区

员工编号

客户等级

姓名

部门编号

电话

客户编号

法人

密码

所属行业

服务

n

客户

员工

1

1

1

客户状态

处理

提交

n

n

服务编号

n

n

隶属

管理

受理方式

 

客服信息服务内容

1处理状态

客户状态

客户名称

部门

处理员工编号

1

联系人

隶属

1

处理日期

客户满意程度

1

管理人员

客户反馈信息

部门编号

 

编号

 

密码

部门编号

姓名

部门名

 

(5)、使用PowerDesigner设计CDM①打开PowerDesigner,新建CDM模型

●在PowerDesigner主窗体上,选择“File”—>“New”命令,如下图所示:

 

9

 

●在新建模型界面,设置模型的名称为客户资源管理,单击“确定”按钮,进入如

下界面:

 

②创建实体

●从设计元素面板上选择实体(Enitity),将鼠标指针指向设计区域的合适位置,

 

单击鼠标左键,在设计区域中创建一个实体,如下图所示:

 

10

 

●从设计元素面板上选择指针(Pointer),进入对象编辑状态,将鼠标指针指向刚才创建的实体并双击鼠标左键,出现如下所示属性编辑界面:

 

●选择“General”选项卡,设置通用属性,一班机为实体,设置该实体的Name属性为班级,Code列设置属性的代码;接着进入“Attributes”选项卡,设置实体的属性:

DataType列设置属性的数据类型;Domain列设置属性的域;M,P,D列设置属性的约束,设置员工的四个属性,员工编号与员工名称

名称;将员工编号所在行对应的P选项选中,设置该属性为主键,如下图所示:

 

③按照上面的方法创建其他实体,如下图所示:

 

11

 

④创建实体之间的关系,如下图所示:

 

12

 

⑤建立实体之间的联系,如下图所示:

 

⑥验证CDM的正确性

在PowerDesigner的主窗体中,选择“Tools”->“CheckModel”命令,进入如下图所示的模型检查设置界面:

 

选择需要检测的内容之后,单击“确定”按钮,进入下图的检查结果界面。

查结果包括警告和错误,其中警告不影响生成PDM,有错误的模型是不能生成PDM的。

如下图所示,可以知道没有发现错误!

 

13

 

如果有错误,可以选择查看发生错误的实体或数据项。

将鼠标指针指向错误列表中的错误并单击鼠标左键,查看并修改。

三、客户资料管理逻辑结构与物理结构设计

为了方便不同用户使用,需要使用更符合用户习惯的别名,并且针对不同级别的用

户定义不同视图,一满足系统对安全性的要求,为方便查询客户的信息情况,根据需要建立

如下子模式

(1)、使用PowerDesigner设计PDM

①直接用CDM转化成PDM,点击工具栏的tools—>checkphysicdatamodel,直

接就可以从CDM转换成PDM,如下图所示:

 

②此时可以看到每个表,分别如下图所示:

 

14

 

15

 

③生成每个表的代码如下图所示:

◆员工表:

altertablecsinfo

dropconstraintFK_CSINFO_DISPOSE_WORKER

go

altertableserver

dropconstraintFK_SERVER_SERVER_WORKER

go

altertableworker

dropconstraintFK_WORKER_MANAGE_MANAGER

go

altertableworker

dropconstraintFK_WORKER_SUBJIECTI_DEPARMEN

go

ifexists(select1

fromsysindexes

whereid=object_id('worker')

andname='manage_FK'

andindid>0

 

16

 

andindid<255)

dropindexworker.manage_FK

go

ifexists(select1

fromsysindexes

whereid=object_id('worker')

andname='subjiection_FK'

andindid>0

andindid<255)

dropindexworker.subjiection_FK

go

ifexists(select1

fromsysobjects

whereid=object_id('worker')

andtype='U')

droptableworker

go

/*==============================================================*/

/*Table:

worker*/

/*==============================================================*/createtableworker(

workeridbigintnotnull,

manageridintnull,

deparmentidintnull,

wnamevarchar(30)notnull,

workerpwvarchar(50)notnull,

constraintPK_WORKERprimarykeynonclustered(workerid)

go

/*==============================================================*/

/*Index:

manage_FK*/

/*==============================================================*/createindexmanage_FKonworker(

manageridASC

go

/*==============================================================*/

/*Index:

subjiection_FK*/

/*==============================================================*/createindexsubjiection_FKonworker(

deparmentidASC

go

altertableworker

 

17

 

addconstraintFK_WORKER_MANAGE_MANAGERforeignkey(managerid)

referencesmanager(managerid)

go

altertableworker

addconstraintFK_WORKER_SUBJIECTI_DEPARMENforeignkey(deparmentid)

referencesdeparment(deparmentid)

go

◆客户表:

altertablecsinfo

dropconstraintFK_CSINFO_TAKE_COMPANY

go

altertableserver

dropconstraintFK_SERVER_SERVER2_COMPANY

go

ifexists(select1

fromsysobjects

whereid=object_id('company')

andtype='U')

droptablecompany

go

/*==============================================================*/

/*Table:

company*//*==============================================================*/createtablecompany(

companyid

int

notnull,

companyname

varchar(50)

notnull,

vocation

varchar(50)

null,

address

varchar(50)

null,

companytel

varchar(50)

null,

companyleader

varchar(50)

null,

level

char(8)

null,

companystate

varchar(30)

null,

constraintPK_COMPANYprimarykeynonclustered(companyid)

go

◆服务表:

 

◆参与表:

◆市场活动表:

◆管理人员表:

◆客服信息表:

◆部门表:

 

18

 

④建立用户子模式

从设计面板中选择视图,在设计区中创建一个视图,如下图所示:

 

输入如上SQL语句后,在“Columns”选项卡中就会出现视图中的字段,如下图所示:

 

(2)、使用上面的方法创建表、表间关系、用户模式,完成客户资料管理

PDM的设计,

设计好的客户资料管理

PDM,如下图所示:

在“General”选项卡,选择产生类型(

Generationtype)为脚本产生并设置脚本

文件的保存位置和文件名,如下图所示:

在“General”选项卡中检查DBMS是否为MicrosoftSQLServer2000

,如下图所

示:

在“Option”选项卡上,设置生成选项

选择“Option”选项卡,如下图所示,根据需要设置生成数据库对象的脚本格式。

在“Selection

”选项卡中,选择生成对象,如下图所示:

在“Preview”选项卡中,预览生成的

SQL脚本,如下图所示:

 

⑥确定生成脚本

所以内容正确选择后,单击“确定”按钮,生成脚本。

脚本生成后,自动调用记事本进行编辑。

如下图所示:

 

(3)、执行脚本①连接ODBC

在PowerDesigner主窗体中选择“Database”—>“Connect”命令,进入如下图所示的链接ODBC界面。

选中“Machinedatasource”选项,并在数据源下拉列表框中选中已经

创建的数据源名称,输入“SM”数据库的用户名和口令之后,建立ODBC连接。

 

②执行SQL

 

19

 

在PowerDesigner主窗体中选择“Database”—>“ExcuteSQL”命令,选择自动生成的脚本文件并执行。

如下图所示:

 

③验证脚本执行结果

如果脚本执行正确,打开SM数据库,检查自动创建的数据库对象是否与设计一

致,如下图所示:

 

(4)、产生测试数据

在PowerDesigner主窗体中选择“Database”—>“GenerateTestdata”命令测试

数据,如下图所示产生测试数据界面:

 

①在“Selection”选项卡中选择需要产生测试数据的表,如下图所示:

 

②在“NumberofRows”选项卡中设置测试数据的行数,默认值为20行,如果要

修改,选择“NumberofRows”选项卡,单击需要修改测试数据行数的表对应的“TestNumber”列,进行行数编辑状态,修改对应表产生测试数据的行数,如下图所示

③产生测试数据

设置完成后,单击“确定”按钮,生成测试数据,如下图所示:

 

④验证产生的测试数据

打开SM数据库,检查产生的测试数据,如下图所示:

(5)、分析需要使用哪些表

(6)、设计存储过程的算法

createprocedurep_level

@idbigint(8)-入口参数:

客户编号

as

begin

declare@level1int--待统

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

当前位置:首页 > 小学教育 > 语文

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

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