大型数据库电子商城管理系统课程设计.docx

上传人:b****9 文档编号:26206413 上传时间:2023-06-17 格式:DOCX 页数:34 大小:728.06KB
下载 相关 举报
大型数据库电子商城管理系统课程设计.docx_第1页
第1页 / 共34页
大型数据库电子商城管理系统课程设计.docx_第2页
第2页 / 共34页
大型数据库电子商城管理系统课程设计.docx_第3页
第3页 / 共34页
大型数据库电子商城管理系统课程设计.docx_第4页
第4页 / 共34页
大型数据库电子商城管理系统课程设计.docx_第5页
第5页 / 共34页
点击查看更多>>
下载资源
资源描述

大型数据库电子商城管理系统课程设计.docx

《大型数据库电子商城管理系统课程设计.docx》由会员分享,可在线阅读,更多相关《大型数据库电子商城管理系统课程设计.docx(34页珍藏版)》请在冰豆网上搜索。

大型数据库电子商城管理系统课程设计.docx

大型数据库电子商城管理系统课程设计

1课程设计简介

1.1课程设计的目的

将电子商城管理系统作为课程设计,目的是在学习数据库理论基础上,将所学的应用到实践中,以提高学习的质量,和提高知识的运用能力。

而本次的课程设计中。

重点是要掌握数据库的设计、数据查询的实现,并要求通过课程设计将理论向实践的转化、和对大型数据库理论的理解。

以及要求达到熟练掌握对数据库的分析和设计、数据表的建立(绘画数据流图、E-R图)。

以及利用面向对象的技术实现相应的增加数据,删除数据,修改数据,查询数据的基本功能。

1.2课程设计内容

1.2.1系统分析

可行性分析:

电子商城管理系统主要是能够方便有效地管理,客户在商城购物的商品信息,订单的管理。

主要从以下方面进行可行性分析:

(1)技术可行性:

目前,实体商城购物某些工作存在盲目性、随意性、和无效消耗,不能保证工作质量,影响商品的销售,从销售者角度考虑可能带来实际的和潜在的经济损失。

若开发成功本系统,将有助于卖家更好地预测市场,更好的开发客户及时调整经营销售策略,在激烈的市场竞争中把握主动。

因此,从长远利益考虑,本项目若能开发成功,它所带来的效益将远高于系统投入。

(2)运行可行性:

在实体店铺的业务方面,由于日常信息处理量大,耗费时间长,出错效率高,在系统投入运行后,可以实现业务中的信息集中处理、分析利用信息和信息的交流辅助市场的业务监管和重大决定。

并且可以实现实体店铺进一步向网络服务发展,为信息工作打下良好的基础。

(3)法律可行性:

该平台是是自主开发设计,因此不会构成侵权,在法律上是可行的。

通过以上的研究和分析,认为系统开发所产生的效益是巨大的,所以开发本项目是可行的、必要的。

用户需求分析:

根据对传统的商务模式的分析,同时调研了现有的一些电子商城系统后,得到“电子商城管理系统”的需求,主要包括系统功能需求和系统性能需求两方面。

1.2.2系统功能分析

电子商城管理系统的主要功能需求有:

(1)系统用户管理:

实现对商城管理用户的添加、密码的修改等操作;

(2)会员信息管理:

删除、查看会员信息;

(3)商品管理:

添加、删除、修改、查看商品;

(4)订单管理:

查看、删除、处理订单;

(5)详细订单管理:

查看、删除详细订单;

(6)商品类别的管理:

查看,添加,删除商品类别;

(7)员工信息管理:

添加、删除、修改;

1.2.3系统总体功能设计

通过对系统的需求分析,并对各个功能需求进行集中、分块、可得到电子商城管理系统的功能模块图。

功能模块图是软件工程过程中的一个重要环节,它显示了系统所要实现的各项功能。

电子商城管理系统的功能模块图如图1-1所示:

图1.1系统功能框图

1.2.4数据库的设计

用户的需求具体体现在各种信息的提供、保存、更新和查询、这就要求数据库的设计能够满足各种信息的输入和输出。

为了准确、形象、简单地描述。

该系统的数据及相关联情况,绘制出系统的E-R图,如图1-2所示:

图1.2系统E-R图

2数据结构的设计

2.1Orale简介

Oracle是最早商品化的的关系型数据库管理系统,它是世界上最大的数据库专业厂商甲骨文(Oracle)公司的核心产品,也是当前应用最广泛的、功能最强大的、具有面向对象特点、采用了客户机、服务器架构的数据库系统。

2.2数据库概念结构设计

针对一般网上购物网站进行需求分析,通过对网上购物过程的内容和数据流程分析,同时根据本电子商城管理系统的数据流程,对系统数据库进行概念结构设计。

根据数据关系模型和数据库关系模式的范式,我们创建了电子商城管理系统的数据表,本系统共有8个数据表,分别是:

Customers(会员信息表)、Types(商品类别表)、Doods(商品信息表)、Employees(员工表)、Payments(支付方式表)、Orders(订单信息表)、OrderDetails(订单详情表)、Users(用户表)。

2.2.1建立数据库的原则

数据库的前期规划(包括对基本文件的构成、数量、物理文件的分布以及存储参数的设置等)都对数据库后期的运行性能带来很大的影响,甚至直接影响数据库系统的维护成本。

因此,建立数据库时,应遵循遵循Orcale创建数据库的原则以及数据库的基本组成要素。

本系统在建立数据库时,由于表中存储信息不同,所以表中所需字段也不一样,在确定所需字段时有以下五个原则:

1.表中的主键字段,不允许重复值以及Null值,以免影响数据完整性。

2.描述不同的主题字段属于不同的表,通过定义之间的关系,可以将多个表中的字段进行组合,生成各种表单或报表。

3.不在表中存储需要经过推导或计算得到的数据。

4.收集所需要的全部信息。

应全面检查书面的表单和报表,确定所需要的数据都已包含在所设计的表中或者可以有这些表计算出来。

5.以最小的逻辑单位进行存储信息,应尽量把信息分解成较小的逻辑单位。

2.2.2建立字段的原则

在实际操作中,选择和确定数据类型时,应结合字段的自身情况并考虑一下4点:

1.字段将要用于存储什么类型的值;

2.是否要对字段进行排序或筛选;

3.是否要对字段进行分组;

4.是否要对字段执行相关的运算。

2.2.3数据库表的实体图

1.Types(商品类别表)实体图:

图2.1商品类别表实体图

2.Goods(商品信息表)实体图:

图2.2商品信息表的实体图

3.Employees(员工表)实体图:

图2.3员工表的实体图

2.2.4数据库的E-R图

图2.4数据库的E-R图

2.3数据库逻辑结构设计

数据库概念结构设计完成之后,将数据库的概念结构转换为数据库系统支持的实际数据类型,也就是数据库逻辑结构。

2.3.1数据库的表结构

表2.1Types表结构

表序号

1

表名

Types

含义

存储商品类别信息

序号

属性名称

含义

数据类型

长度

为空性

约束

1

t_ID

类别编号

Char

2

Notnull

主键

2

t_Name

类别名称

Varchar

50

Notnull

3

t_Description

类别描述

Varchar

100

Null

表2.2Goods表结构

表序号

2

表名

Goods

用途

存储商品信息

序号

属性名称

含义

数据类型

长度

为空性

约束

1

g_ID

商品编号

Char

6

Notnull

主键

2

g_Name

商品名称

Varchar

50

Notnull

3

t_ID

商品类别

Char

2

Notnull

外键

4

g_Price

商品价格

Float

Notnull

5

g_Discount

商品折扣

Float

Notnull

6

g_Number

商品数量

Short

Notnull

7

g_ProduceDate

生产日期

Date

Notnull

8

g_Image

商品图片

Varchar

100

Null

9

g_Status

商品状态

Varchar

10

Notnull

10

g_Description

商品描述

Varchar

1000

Null

表2.3Employees表结构

表序号

3

表名

Employees

含义

存储员工信息

序号

属性名称

含义

数据类型

长度

为空性

约束

1

e_ID

员工编号

Char

10

Notnull

主键

2

e_Name

员工姓名

Varchar

30

Notnull

3

e_Gender

性别

Char

2

Notnull

4

e_Birth

出生年月

Varchar

Notnull

5

e_Address

员工地址

Date

100

Null

6

e_Postcode

邮政编码

Char

6

Null

7

e_Mobile

手机号码

Varchar

11

Null

8

e_Phone

固定电话

Varchar

15

Notnull

9

e_E-mail

电子邮件

Varchar

50

Notnull

2.3.2数据库表的实现

1.创建商品类别表Types

CREATETABLETypes

t_IDchar

(2)PRIMARYKEYNOTNULL,--商品的分类编号

t_Namevarchar2(50)NOTNULL,--商品的分类名称

t_Descriptionvarchar2(100)NOTNULL--商品类别描述

);

2.创建商品信息表Goods

CREATETABLEGoods

g_IDchar(6)NOTNULLPRIMARYKEY,--商品编号

g_Namevarchar2(50)NOTNULL,--商品名称

t_IDchar

(2)NOTNULLREFERENCESTypes(t_ID),--商品分类号(外键)

g_PricefloatNOTNULL,--商品价格

g_DiscountfloatNOTNULL,--商品折扣

g_NumberintegerNOTNULL,--库存数量

g_ProduceDatedateNOTNULL,--商品生产日期

g_Imagevarchar2(100),--商品图片

g_Statusvarchar2(10)NOTNULL,--商品状态//热点//促销//推荐

g_Descriptionvarchar2(1000)--商品描述

);

3.创建员工表Employees

CREATETABLEEmployees

e_IDchar(10)NOTNULLPRIMARYKEY,--员工编号

e_Namevarchar2(30)NOTNULL,--员工姓名

e_Genderchar

(2)NOTNULL,--性别

e_BirthdateNOTNULL,--出生年月

e_Addressvarchar2(100)NOTNULL,--员工地址

e_Postcodechar(6)NOTNULL,--员工邮政编码

e_Mobilevarchar2(11)NOTNULL,--员工手机号码

e_Phonevarchar2(15)NOTNULL,--员工固定电话

e_Emailvarchar2(50)NOTNULL--员工电子邮箱

);

2.3.3存储过程

在创建电子商城管理系统数据库时创建的存储过程如下所示:

(1)根据商品编号获得商品名称和类别编号的存储过程

主要功能描述:

通过输入一个商品编号,到商品信息表中查询出商品的名称、类型编号,如果有数据就返回商品名称,类别编号。

没有数据就返回空值。

createorreplaceprocedureup_GetByID(gidinvarchar2,gnameoutgoods.gname%type,tidoutgoods.t_ID%type)

as

begin

selectg_name,t_IDintogname,tidfromgoodswhereg_id=:

old.g_id;

exception

whenno_data_foundthen

gname:

=null;

tid:

=null;

endup_getById;

(2)添加员工记录的存储过程

主要功能的描述:

实现添加员工记录,其中输入参数有(员工id,员工姓名,员工出生日,现住地址,邮编,手机号码,固定号码,电子邮件),通过insert语句可将其记录插入到员工表中。

createorreplaceprocedureEmployeesAdd

(e_IDinchar

e_Nameinvarchar2

e_Genderinchar

e_Birthindate

e_Addressinvarchar2

e_Postcodeinchar

e_Mobileinvarchar2

e_Phoneinvarchar2

e_Emailinvarchar2)

as

begin

insertintoEmployeesvalues(e_ID

e_Name

e_Gender

e_Birth

e_Address

e_Postcode

e_Mobile

e_Phone

e_Email);

commit;

end;

(3)修改职员记录信息的存储过程

主要功能描述:

实现更新员工记录,其中输入参数有(员工id,或员工姓名,或员工出生日,或现住地址,或邮编,或手机号码,或固定号码,或电子邮件),通过update语句可将其记录插入到员工表中。

CreateorreplaceprodecureEmployeesUpdate

(old_e_IDinchar,new_e_IDinchar

New_e_Nameinvarchar2

New_e_Genderinchar

New_e_Birthindate

New_e_Addressinvarchar2

New_e_Postcodeinchar

New_e_Mobileinvarchar2

New_e_Phoneinvarchar2

New_e_Emailinvarchar2)

As

Begin

Updateemployeessete_ID=new_e_ID,

E_Name=new_e_Name,

e_Gender=new_e_Gender,

e_Birth=new_e_Birth,

e_Address=new_e_Address,

e_Postcode=new_e_Postcode,

e_Mobile=new_e_Mobile,

e_Phone=new_e_Phone,

e_Email=new_e_Emailwheree_ID=old_e_ID;

commit;

end;

2.3.4触发器

在创建电子商城管理系统数据库时创建的触发器如下所示:

(1)TypesDelete触发器描述:

删除商品类别表中商品类别的一条记录,同时也删除该记录商品表中商品类别信息。

createorreplacetriggerTypesDelete

afterdeleteonTypesforeachrow

begin

deletefromGoodswheret_id=:

old.t_id

end;

(2)TypesUpdate触发器描述:

修改商品类别表的t_id时,字段t_id在商品表中也做相应的修改

createorreplacetriggerTypesUpdate

afterupdateonTypesforeachrow

begin

ifupdatingthen

updateGoodssett_id=:

new.t_id

wheret_id=:

old.t_id;

endif;

end;

2.3.5数据库的数据流图

1.系统顶层数据流图

图2.5顶层数据流图

2.管理员登录数据流图

图2.6管理员登录数据流图

2.4数据库物理结构设计

数据库中types表,goods表,employees表的物理结构设计如下所示:

图2.7types表物理结构

图2.8goods表物理结构

图2.9employees表物理结构

3功能模块描述

3.1系统功能层次图

图3.1系统功能层次图

3.2主要功能描述

通过对用户需求的分析,可以分析出该电子商城管理系统大致可以把前台分为三个模块:

商品查询模块、订单查询模块、订购模块。

后台分为六大模块:

系统设置模块,商品管理模块,用户管理模块,订单管理模块、系统工具模块和帮助模块。

而我们本次仅针对后台管理进行了设计与具体实现。

·总体功能需求

电子商城(后台)管理系统是针对网上商城的后台实现智能管理的现代化平台,以实现管理的方便、快捷与高效的业务需求。

·具体系统后台功能需求描述

(1).系统设置模块

实现管理者对站内的公告进行分类管理和支付方式管理功能。

(2).商品管理模块

商品管理模块具体实现对商品的类别、添加新商品、查看/修改商品、商品信息统计和信息打印进行管理。

(3).用户管理模块

用户管理模块具体实现对前台会员、后台用户、网站员工和操作日志的管理,包括相关的添加、删除、修改等操作。

(4).订单管理模块

用户管理模块具体实现订单状态查询和订单处理。

(5).系统工具模块

系统工具模块具体实现对数据库的压缩、备份和恢复操作;密码修改、数据的导入和导出以及退出系统功能。

(6).帮助模块

帮助模块具体实现目录/索引的查询以及关于我们系统的简介。

4.1系统界面设计

4.1.1系统主界面

图4.1系统主界面

4.1.2商品信息管理

输入用户名,密码后登录到系统主页面,点击商品管理,可查看详细的商品信息、本系统实现了对商品的添加、删除、修改等基本功能。

图4.2商品信息管理界面

4.1.3商品管理-添加商品信息界面

图4.3商品添加界面

4.1.4商品管理-商品类别管理

图4.4商品类别管理界面

4.1.5员工信息管理主界面

图4.4员工信息管理界面

4.1.6员工管理-添加员工信息

图4.5员工管理-添加员工信息界面

通过一个月的努力,目前该系统的程序设计已经基本结束了。

在此期间,我根据题目要求,查阅了大量关于电子商城管理系统的相关资料,切实际地按照面向对象的分析步骤,从概要设计,详细设计,数据库设计,再到编码,调试运行。

已经顺利完成各个步骤的开发工作,基本达到预期设计的要求。

通过本次大型数据库的课程设计,使我不论在理论上还是在实践上都有了一个较大幅度的提高,尤其是对数据库的详细设计阶段对综合知识的运用能力和对数据表的设计,同时也培养了自己独立分析问题、解决问题以及与组员的交通的能力。

在整个设计和开发过程中使我对面向对象开发方法在思想有了进一步深刻的了解完善需求,最大限度的满足用户所需。

本次设计中运用了大量的软件工程的思想和相关的数据知识,对大学所学的知识得以巩固和运用。

该电子商城管理系统虽然已经基本上满足要求,但是还不够完善,在以后的使用过程中可能会暴露多实际问题,有待进一步的改进,完善。

6参考文献

[1]郑阿奇,Oracle实用教程(第2版),电子工业出版社,2006年

[2]郑阿奇,Oracle实用教程,电子工业出版社,2003年

[3]陈志刚,大型数据库技术-Oracle9i高级程序设计,华南理工大学出版社,2003年

[4]赵乃真,Oracle9i从基础到应用,人民邮电出版社,2002年

[5]赵松涛,Oracle9i中文版入门与提高,人民邮电出版社,2002年

[6]Oracle数据库管理与应用实例教程,人民邮电出版社,2002年

7程序源代码

7.1商品信息管理模块主要源代码

namespaceWebShop_admin.Operation

{

publicpartialclassfrmGoodsManage:

Form

{

publicfrmGoodsManage()

{

InitializeComponent();

}

ClassDB.ClassDBdb=newClassDB.ClassDB();

DataSetds=newDataSet();

publicstaticstringgoodsid=null;

PublicClass.PublicUseclasspuc=newWebShop_admin.PublicClass.PublicUseclass();

privatevoidfrmGoodsManage_Load(objectsender,EventArgse)

{

stringstrGoods="select*fromvw_Goods";

getData(strGoods);

}

privatevoidgetData(stringsql)

{

ds=db.getDataSet(sql);

if(ds==null)

{

return;

}

else

{

dgv_Goods.DataSource=ds.Tables[0];

}

}

privatevoidtextBox1_TextChanged(objectsender,EventArgse)

{

if(this.cb_Name.Text.Length==0)

{

MessageBox.Show("请选择查询字段!

","提示");

return;

}

stringsql=null;

switch(this.cb_Name.SelectedIndex)

{

case0:

{

sql="select*fromvw_Goodswhere商品编号like'%"+this.textBox1.Text.ToString()+"%'";

}break;

case1:

{

sql="select*fromvw_Goodswhere商品名称like'%"+this.textBox1.Text.ToString()+"%'";

}break;

case2:

{

sql="select*fromvw_Goodswhere类别名称like'%"+this.textBox1.Text.ToString()+"%'";

}break;

case3:

{

sql="select*fromvw_Goodswhere商品状态like'%"+this.textBox1.Text.ToString()+"%'";

}break;

default:

return;

}

if(ds!

=null)

ds.Clear();

getData(sql);

}

privatevoidtsb_Exit_Click(objectsender,EventArgse)

{

this.Close();

}

private

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

当前位置:首页 > 工程科技 > 城乡园林规划

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

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