电子商城数据库的开发.docx

上传人:b****4 文档编号:4253473 上传时间:2022-11-28 格式:DOCX 页数:27 大小:288.97KB
下载 相关 举报
电子商城数据库的开发.docx_第1页
第1页 / 共27页
电子商城数据库的开发.docx_第2页
第2页 / 共27页
电子商城数据库的开发.docx_第3页
第3页 / 共27页
电子商城数据库的开发.docx_第4页
第4页 / 共27页
电子商城数据库的开发.docx_第5页
第5页 / 共27页
点击查看更多>>
下载资源
资源描述

电子商城数据库的开发.docx

《电子商城数据库的开发.docx》由会员分享,可在线阅读,更多相关《电子商城数据库的开发.docx(27页珍藏版)》请在冰豆网上搜索。

电子商城数据库的开发.docx

电子商城数据库的开发

 

《数据库开发与实现》大作业

 

题目

电子商城设计与实现

学生姓名

学院

1前言

1.1设计背景

Internet是20世纪人类最伟大的发明之一,它以无与伦比的优势描绘了一幅“地球村”网络风景。

Internet带来的不仅是一场信息革命,更重要的是,它引起了人类经济活动方式的深刻变革。

近年来,企业级计算机应用达到了前所未有的新高潮。

上世纪90年代以来,随着网络、通信和信息技术的突破性进展,Internet在全球爆炸性增长并迅速普及。

在这一前提下,电子商务应运而生了。

电子商务是基于互联网、以交易双方为主体、以银行电子支付和结算为手段、以客户数据为依托的全新的商务模式,它可以使商家与供应商更紧密地联系起来,更快地满足客户需求,也可以让商家在全球范围内选择最佳供应商,在全球市场上销售产品。

自1998年“电子商务年”以来,电子商务在全球发展迅猛,大约每九个月其交易额就翻一番,全球电子商务交易额(包括网上贸易额、销售额等)达到数千亿美元,电子商务收入剧增62%。

目前,世界各国纷纷看好电子商务这块新大陆,普遍认为电子商务的发展将是未来25年世界经济发展的一个重要推动力,对经济的促进将远远超过200年前的工业革命。

1.2硬件系统

处理器:

Intel双核心处理器:

支持多线程,二级缓存为2MB或4MB,主频133MHZ或266MHZ

内存:

2GB 支持DDR3 

硬盘:

不少于80GB7200转/分或固态硬盘

电源:

有内置电源以及外置电源,外置电源能够提供突然断电提供时间保存数据作用

1.3软件系统

操作系统:

Windows7

数据库系统:

SqlServer2008

2需求分析、业务流程和数据字典介绍

2.1需求分析

2.1.1会员用户

(1)用户注册:

提供用户注册功能,注册时用户需要填写相关信息,系统会记录注册用户的信息以方便后面进行购物发货。

(2)用户登录:

如果用户已经注册,则可以使用自己的用户名和密码来登录商城系统,登录之后可以修改自己的个人信息,查询自己的订单,进行购物,并付款,确认收货等。

(3)个人信息修改:

用户登录系统后可以对自己的个人信息如密码、电话、收货地址等信息进行修改。

(4)商品分类:

用户可以通过自己的需要查看不同类型的商品,有菜单的类别与子类别。

(5)查看购物车:

用户可以查看或删除自己购物车中的商品。

(6)查看订单:

用户可以对购物之后系统生成的订单进行查询。

(7)商品留言:

用户可以进行留言。

2.1.2管理员用户

(1)会员管理:

管理员可以对注册用户进行管理,包括对用户的添加、修改和删除。

(2)商品类别设置:

管理员可以对各种商品的类别进行增删改查的操作。

主要分为商品大类和商品小类设置,可以将小类商品划分到不同的大类中。

(3)订单管理:

用户购买商品后,系统自动生成订单,管理员可以对用户的订单的状态进行修改。

(4)商品管理:

管理员可以对商品信息进行编辑,可以设置热卖商品和特价打折商品,进行商品的上架和下架。

发布公告:

管理员可以发布信息。

(5)留言管理:

管理员可以对用户留言进行管理。

2.2电子商城业务流程

(1)浏览与选择商品:

顾客进入网站即刻自动提供购物车,不需身份确认就可以在网站上随意浏览、挑选商品(可增加、删除、修改购物车上商品的数量),网站提供最新的商品列表,热卖商品优先列表给顾客作为选购时的参考;

(2)判断:

顾客确定所购物品后,系统将判断该顾客是否是会员,如果是,则可直接填写订单;否则,提示顾客登记注册;

(3)提交订单:

已选购的商品需填写订单细节,如付款及提货方式等。

只有正式提交定单才能生效;

(4)注册:

顾客可在公司的网站上注册,填写姓名地址等信息后提交申请;

(5)确认:

后台管理将实时得到顾客的注册信息,通过电话及其他方式确认,得到注册确认的顾客才能成为会员,并拥有唯一的会员证号;

(6)不是会员的顾客可以先挑选商品再申请成为会员,会员申请生效后即可下定单,所定购的商品数及时存入数据库;

(7)送货与付款:

网上的每一份订单都将实时存入后台数据库,后台操作人员通过电话及其他方式确认,确认后将及时实施该订单:

向顾客送货,货到付款,完成网上交易。

图2-2:

系统流程图

2.3电子商城E-R图

2.3.1电子商城系统全局E-R图

图2-3:

系统E-R图

2.3.2管理员E-R图

图2-4:

管理员E-R图

2.3.3会员信息E-R图

图2-4:

会员信息E-R图

 

2.3.4订单表E-R图

图2-5:

订单表E-R图

2.3.5商品信息E-R图

图2-6:

商品信息E-R图

2.3.6留言信息E-R图

图2-7:

留言信息E-R图

2.3.7公告信息E-R图

图2-8:

公告信息E-R图

2.3.8购物车信息E-R图

购物车信息

价格

编号

数量

商品名

图2-9:

购物车信息E-R图

2.4数据字典

(1)Customer表(用户的基本信息)

序号

属性名称

含义

数据类型

长度

说明

约束

1

c_name

用户名

varchar

30

NotNull

2

c_id

用户编号

int

20

NotNull

主键

3

c_pass

密码

varchar

30

NotNull

4

c_header

头像

varchar

100

NotNull

5

c_phone

电话号码

varchar

12

NotNull

6

c_question

问题提示

varchar

30

NotNull

7

c_answer

问题答案

varchar

30

NotNull

8

c_address

地址

varchar

30

Null

9

c_email

邮箱

varchar

50

NotNull

表2-4:

Customer表

(2)Idea表(用户的留言信息)

序号

属性名称

含义

数据类型

长度

说明

约束

1

id

编号

char

10

NotNull

主键

2

c_id

用户编号

int

10

NotNull

3

new_message

留言信息

varchar

1000

NotNull

4

re_message

回复信息

varchar

1000

Null

5

new_time

留言时间

date

15

NotNull

6

re_time

回复时间

date

15

Null

表2-5:

Idea表

(3)Product表(商品信息)

序号

属性名称

含义

数据类型

长度

说明

约束

1

p_type

商品类型

varchar

30

NotNull

2

p_id

商品编号

varchar

10

NotNull

主键

3

p_name

商品名称

varchar

40

NotNull

4

p_price

商品价格

float

8

NotNull

5

p_quantity

商品数量

int

4

NotNull

6

p_image

商品图片

Varchar

100

NotNull

7

p_description

描述信息

Varchar

2000

NotNull

8

p_time

添加时间

date

20

Null

9

t_id

大类编号

Char

10

NotNull

10

s_id

小类编号

Char

10

NotNull

表2-6:

Product表

(4)Notice表(公告信息)

序号

属性名称

含义

数据类型

长度

说明

约束

1

n_id

编号

char

10

NotNull

主键

2

n_message

公告信息

varchar

1000

NotNull

3

a_id

发布者

int

20

NotNull

4

n_header

头像

Varchar

50

NotNull

5

n_time

发布时间

char

10

NotNull

表2-7:

Notice表

(5)OrderDetails表(商品详细表)

序号

属性名称

含义

数据类型

长度

说明

约束

1

order_id

订单号

char

10

NotNull

主键

2

p_id

商品编号

char

10

NotNull

3

p_price

价格

Float

8

NotNull

4

p_number

数量

Int

4

NotNull

表2-8:

OrderDetails表

(6)Payment表(支付信息)

序号

属性名称

含义

数据类型

长度

说明

约束

1

pay_id

编号

char

10

NotNull

主键

2

pay_payment

支付方式

varchar

50

NotNull

3

pay_msg

备注

varchar

500

Null

表2-9:

Payment表

(7)Orders表(订单信息)

序号

属性名称

含义

数据类型

长度

说明

约束

1

order_id

编号

char

10

NotNull

主键

2

order_payment

支付方式

varchar

1000

NotNull

3

order_adress

地址

varchar

200

NotNull

4

order_email

邮箱

varchar

20

NotNull

5

c_id

用户编号

int

20

NotNull

外键

6

order_time

订购时间

date

30

NotNull

7

order_sum

总价值

float

8

NotNull

表2-10:

Orders表

(8)Admin表(管理员基本信息)

序号

属性名称

含义

数据类型

长度

说明

约束

1

a_id

管理员编号

int

20

NotNull

主键

2

a_name

管理员账号

varchar

30

NotNull

3

a_pass

管理员密码

varchar

30

NotNull

4

a_phone

联系电话

char

12

Null

5

a_email

电子邮箱

varchar

40

Null

表2-11:

Admin表

3基本表设计及完整性体现

3.1基本表设计

CREATEDATABASEShopS

--admin表

CREATETABLEAdmin

a_idintnotnullprimarykey,

a_namevarchar(30)notnull,

a_passvarchar(30)notnull,

a_headervarchar(30)notnull,

a_phonechar(15)notnull,

a_emailvarchar(40)notnull

--Customer表

CREATETABLECustomer

c_idintnotnullprimarykey,

c_namevarchar(30)notnull,

c_passvarchar(30)notnull,

c_headervarchar(30)notnull,

c_phonechar(15)notnull,

c_questionvarchar(30)notnull,

c_answervarchar(30)notnull,

c_addressvarchar(50)null,

c_emailvarchar(50)notnull

--Idea表(客户反馈的信息)

CREATETABLEIdea

idchar(10)notnull,

c_idintnotnull,

new_messagevarchar(1000)notnull,

re_messagevarchar(1000)null,

new_timechar(15)notnull,

re_timechar(15)null

ALTERTABLEIdea

ADDCONSTRAINTfk_id1foreignkey(c_id)referencesCustomer(c_id)

--main_type表(菜单类别)

CREATETABLEmain_type

t_idchar(10)notnullprimarykey,

t_typevarchar(30)notnull

--sub_type表(子类别)

CREATETABLEsub_type

s_idchar(10)notnullprimarykey,

s_supertypechar(10)notnull,

s_namevarchar(30)notnull,

t_idchar(10)notnull

ALTERTABLEsub_type

ADDCONSTRAINTfk_id2foreignkey(t_id)referencesmain_type(t_id)

--Notice表(公告栏信息)

CREATETABLENotice

n_idchar(10)notnullprimarykey,

n_messagechar(1000)notnull,

a_idintnotnull,

n_headervarchar(50)notnull,

n_timechar(10)notnull

ALTERTABLENotice

ADDCONSTRAINTfk_id3foreignkey(a_id)referencesAdmin(a_id)

--Orders表(订单表)

CREATETABLEOrders

order_idchar(10)notnullprimarykey,

order_paymentvarchar(100)notnull,

order_addressvarchar(200)notnull,

order_emailvarchar(50)notnull,

c_idintnotnull,

order_timevarchar(30)notnull,

order_sumfloatnotnull

ALTERTABLEOrders

ADDCONSTRAINTfk_id4foreignkey(c_id)referencesCustomer(c_id)

--OrderDetails表(详细订单表)

CREATETABLEOrderDetails

order_idchar(10)notnull,

p_idchar(10)notnull,

p_pricefloatnotnull,

p_numberintnotnull

ALTERTABLEOrderDetails

ADDCONSTRAINTfk_id5foreignkey(order_id)referencesOrders(order_id)

--Payment表(支付信息)

CREATETABLEPayment

pay_idchar(10)notnull,

pay_paymentvarchar(50)notnull,

pay_msgvarchar(500)null

--Product表(产品表)

CREATETABLEProduct

p_typevarchar(30)notnull,

p_idchar(10)notnullprimarykey,

p_namevarchar(40)notnull,

p_pricefloatnotnull,

p_quantityintnotnull,

p_imagevarchar(100)notnull,

p_descriptionvarchar(2000)notnull,

p_timevarchar(20)null,

t_idchar(10)notnull,

s_idchar(10)notnull

ALTERTABLEProduct

ADDCONSTRAINTfk_id6foreignkey(t_id)referencesmain_type(t_id)

ALTERTABLEProduct

ADDCONSTRAINTfk_id7foreignkey(s_id)referencessub_type(s_id)

4视图设计和各功能实现

4.1总体视图设计

SELECTFROM

dbo.sub_typeINNERJOIN

dbo.ProductINNERJOINdbo.main_typeON

dbo.Product.t_id=dbo.main_type.t_idON

dbo.sub_type.s_id=dbo.Product.s_idANDdbo.sub_type.t_id=dbo.main_type.t_idCROSSJOIN

dbo.PaymentCROSSJOIN

dbo.NoticeINNERJOIN

dbo.AdminONdbo.Notice.a_id=dbo.Admin.a_idCROSSJOIN

dbo.OrdersINNERJOIN

dbo.IdeaINNERJOIN

dbo.CustomerONdbo.Idea.c_id=dbo.Customer.c_idONdbo.Orders.c_id=dbo.Customer.c_idINNERJOIN

dbo.OrderDetailsONdbo.Orders.order_id=dbo.OrderDetails.order_id

图4-1:

总体视图设计

4.2商品类别视图

当用户浏览商品时需要查看商品时属于哪个大类哪个小类,管理员管理商品时也要清楚商品属于哪个大类哪个小类,而在数据库中存储是只是存储了商品大类和小类的ID号。

这样对于用户体验和管理员管理极为不利,所以采用创建productType视图来解决商品与商品分类关联的问题。

CREATEVIEW[dbo].[productType]

AS

SELECT

FROMdbo.main_typeINNERJOIN

dbo.ProductONdbo.main_type.t_id=dbo.Product.t_idINNERJOIN

dbo.sub_typeONdbo.main_type.t_id=dbo.sub_type.t_id

ANDdbo.Product.s_id=dbo.sub_type.s_id

图4-2:

商品类别视图

4.3管理员订单视图

用户购买商品之后生成订单,而购买商品的数量和购买商品的信息是分别存放在orders表和OrderDetails表中,为了方便管理员管理订单采用orderProduct视图将订单和用户信息,商品名称相关联。

CREATEVIEW[dbo].[orderProduct]

AS

SELECTFROM

dbo.OrdersINNERJOIN

dbo.OrderDetailsONdbo.Orders.order_id=dbo.OrderDetails.order_id

INNERJOIN

dbo.ProductONdbo.OrderDetails.p_id=dbo.Product.p_idCROSSJOIN

dbo.Admin

GO

图4-3:

管理员订单视图

4.4用户订单视图

用户购买商品之后生成订单,购买商品的数量和购买商品的信息是分别存放在orders表和productOrders表中,为了方便查看自己的订单采用userOrderDetails视图将订单和用户信息,商品名称相关联。

CREATEVIEW[dbo].[userOrderdetails]

AS

SELECTFROM

dbo.OrdersINNERJOIN

dbo.CustomerONdbo.Orders.c_id=dbo.Customer.c_idINNERJOIN

dbo.OrderDetailsONdbo.Orders.order_id=dbo.OrderDetails.order_idINNERJOINdbo.ProductONdbo.OrderDetails.p_id=dbo.Product.p_id

GO

图4-4:

用户订单视图

4.5用户留言视图

用户的信息和用户留言分别存放在Customer表中和comment表中,为了方便管理员对用户留言的管理和回复,利用视图userComment来方便管理员管理。

CREATEVIEW[dbo].[CustomerIdea]

AS

SELECTFROM

dbo.IdeaINNERJOIN

dbo.CustomerONdbo.Idea.c_id=dbo.Customer.c_id

GO

图4-5:

用户留言视图

5存储过程和触发器设计及各功能实现

5.1用户登录

当用户登录时如果输入用户名密码,数据库获取用户名和密码后对其和存在数据库中的信息进行比较,如果输入错误,数据库中返回0并提示用户登录失败,如果输入正确就提示登录成功并返回1。

CREATEPROCEDUREcheckUsername

@c_namevarchar(20),

@c_passvarchar(200),

@loginBITOUTPUT

AS

IFEXISTS(SELECT*FROMcustomerWHEREc_name=@c_nameANDc_pass=@c_pass)

begin

SELECT@login=1

print

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

当前位置:首页 > 解决方案 > 学习计划

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

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