网上超市购物车数据库设计.docx

上传人:b****4 文档编号:11560719 上传时间:2023-03-19 格式:DOCX 页数:14 大小:702.89KB
下载 相关 举报
网上超市购物车数据库设计.docx_第1页
第1页 / 共14页
网上超市购物车数据库设计.docx_第2页
第2页 / 共14页
网上超市购物车数据库设计.docx_第3页
第3页 / 共14页
网上超市购物车数据库设计.docx_第4页
第4页 / 共14页
网上超市购物车数据库设计.docx_第5页
第5页 / 共14页
点击查看更多>>
下载资源
资源描述

网上超市购物车数据库设计.docx

《网上超市购物车数据库设计.docx》由会员分享,可在线阅读,更多相关《网上超市购物车数据库设计.docx(14页珍藏版)》请在冰豆网上搜索。

网上超市购物车数据库设计.docx

网上超市购物车数据库设计

网上超市购物车系统

数据库设计说明书

拟制人

审核人___________

批准人______________________

 

数据库设计说明书

1.引言

1.1编写目的

自Internet出现以来,大量的信息通过它迅速传播,突破了原有的通信方式。

在网上,不仅可以迅速找到任何方面的相关内容,而且信息的传递也较以前快了许多。

2000年,全世界已拥有近10亿因特网用户,有一亿多台计算机互联,可以交换数据的网络超过了100万个,每年在网络上的交易次数超过10亿次。

电子商务正是由于这种信息的快速流动和资源的大量集成而悄然崛起,并以惊人的速度发展着。

提供高效的内容丰富的Web商业服务是一项连续不断的任务,并不是做好了几个网页放在那里就可以了。

所以,设计了这个网上超市购物车系统,以对电子商务有进一步的认识。

1.2背景

a.待开发软件系统的名称:

网上超市购物车系统

b.本项目的任务提出者:

石河子大学

c.本项目开发者:

严凤,丛莉莉

d.本项目用户:

网上购物人群

1.3参考资料

《软件开发这点儿事——软件开发工具手册》邵志东著

《程序员指南丛书ASP.NET高级编程》但正刚著

《ASP.NET网络应用系统开发与实例》吴明晖主编吴丹红编著

2.外部设计

2.1支持软件

本数据库主要采用微软公司的成熟数据库系统SQLServer2000,提供了较为灵活操作简单的功能,可以为数据库管理员和系统开发人员提供很好的支持。

3.结构设计

3.1概念结构设计

本数据库将反映的现实世界中的实体、属性和它们之间的关系等的原始数据形式,包括各数据项、记录、系、文卷的标识符、定义、类型、度量单位和值域,

商城首页:

 

 

热门商品:

 

购物清单:

3.2逻辑结构设计:

 

 

3.3关系图

3.3物理结构设计

Customers用户表:

列名

说明

类型(长度)

备注

ID

顾客id

Int

不允许空,主键

Name

顾客名称

Varchar(50)

不允许空

Password

登录密码

Varchar(50)

不允许空

Phone

家庭电话

Varchar(50)

允许空

Fax

传真号码

Varchar(50)

允许空

MobilePhone

移动电话

Varchar(50)

允许空

E-mail

邮件地址

Varchar(50)

允许空

Address

详细地址

Varchar(50)

允许空

Postcode

邮政编码

Char(6)

允许空

QQ

QQ号

Varchar(50)

允许空

MSN

MSN号

Varchar(50)

允许空

Categories商品分类表:

列名

说明

类型

备注

ID

商品类型id

Int(4.)

不允许空,主键

Name

商品类型名称

Varchar(50)

不允许空

Memo

商品类型描述

Varchar(255)

允许空

Products商品表:

列名

说明

类型

备注

ProductID

商品ID

Int

不允许为空

CategoryID

分类ID

Int

不允许为空

ModelNumber

商品编号

Varchar(50)

允许为空

ModelName

商品名称

Varchar(255)

允许为空

ProductImage

商品图片文件名

Varchar(50)

允许为空

UnitCost

单价

Money

不允许为空

Discount

折扣

Money

不允许为空

Description

描述

Varchar(2000)

允许为空

DateTimed

上架时间

Smalldatetime

不允许为空

Clicks

点击量

Int

不允许为空

Sales

销售量

Int

不允许为空

Commend

是否推荐

Bit

不允许为空

Orders订单表

列名

订单ID

类型

备注

ID

订单ID

Int

不允许为空

Memo

备注

Varchar(2000)

允许为空

OrderDate

下订单时间

Smalldatetime

不允许为空

CustomerID

用户ID

Int

不允许为空

ShipDate

发货时间

Smalldatetime

不允许为空

HasSend

是否送货

Bit

不允许为空

HasReceive

顾客是否收到

Bit

不允许为空

Payway

付款方式

Varchar(50)

允许为空

Carryway

送货方式

Varchar(50)

允许为空

ReceiveAddress

收货地址

Varchar(2000)

允许为空

OrderDetails订单详情表:

列名

说明

类型

备注

ID

ID

Int(4)

不允许空,主键

OrderID

订单ID

Int(4)

不允许空

ProductID

商品ID

Int(4)

不允许空

Quantity

商品数量

Int(4)

不允许空

UnitCost

商品单价

Money

允许空

Shoppingcart购物车表:

列名

说明

类型

备注

CartID

购物车ID

Varchar(50)

不允许为空

ProductID

商品ID

Int

不允许为空

ID

用户ID

Int

不允许为空

Quantity

商品数量

Int

不允许为空

DateTimed

购买时间

Smalldatetime

允许为空

Managers管理员表:

列名

说明

类型

备注

ID

管理员主键

Int

不允许为空

Name

管理员姓名

Varchar(50)

不允许为空

Password

管理员密码

Varchar(50)

允许为空

4.存储过程脚本:

(通过商品名称查询商品图片,单价,商品描述,购买时间)

ifexists(select*fromsysobjectswherename='Products_list'andtype='p')

dropprocedureProducts_list

go

createPROCEDUREdbo.Products_list

@spnamechar(50),@sptupianchar(50)output,@danjiamoneyoutput,

@spmiaoshuchar(250)output,@spshijianchar(50)output

as

select@sptupian=ProductImage,@danjia=UnitCost,

@spmiaoshu=Description,@spshijian=DatetimedfromProducts

whereModelName=@spname

go

declare@spnamechar(50),

declare@sptupianchar(50),

declare@danjiamoney,

@spmiaoshuchar(250),@spshijianchar(50)

set@spname='蓝宝石'

execProducts_list@spname,@sptupianoutput,@danjiaoutput,

@spmiaoshuoutput,@spshijianoutput

select@spnameas商品名称,@sptupianas图片,@danjiaas单价,@spmiaoshuas商品描述,@spshijianas购买时间

go

(通过商品ID查询商品名称,商品数量,商品单价,商品描述,购物时间,购物车ID)

ifexists(select*fromsysobjectswherename='Shoppingcart_list'andtype='p')

dropprocedureShoppingcart_list

go

createPROCEDUREdbo.Shoppingcart_list

@ProductIDchar(50),

@spnamechar(50)output,@spshuliangchar(50)output,@danjiamoneyoutput,

@spmiaoshuchar(250)output,@spshijianchar(50)output,@gouwuchengIDchar(50)output

asselect@spname=ModelName,@spshuliang=Quantity,@danjia=UnitCost,

@spmiaoshu=Description,@spshijian=ShoppingCart.Datetimed,@gouwuchengID=CartIDfromProducts,ShoppingCart

whereShoppingCart.ProductID=Products.ProductIDandProducts.ProductID=@ProductID

go

declare@ProductIDchar(50),

@spnamechar(50),@spshuliangchar(50),@danjiamoney,

@spmiaoshuchar(250),@spshijianchar(50),@gouwuchengIDchar(50)

set@ProductID='64'

execShoppingcart_list@ProductID,@spnameoutput,@spshuliangoutput,@danjiaoutput,

@spmiaoshuoutput,@spshijianoutput,@gouwuchengIDoutput

select@ProductIDas商品ID,@spnameas商品名称,@spshuliangas商品数量,@danjiaas商品单价,

@spmiaoshuas商品描述,@spshijianas购买时间,@gouwuchengID购物车ID

Go

5.触发器脚本:

修改表Products中的ProductID,则表ShoppingCart中的ProductID随之改变

ifexists(select*fromsysobjectswherename='Product_ID'andtype='tr')

droptriggerProduct_ID

go

createtriggerProduct_IDonProductsforupdateas

ifupdate(ProductID)

begin

declare@productID_newchar(50),@productID_oldchar(50)

select@productID_new=ProductIDfrominserted

select@ProductID_old=ProductIDfromdeleted

updateShoppingCartsetProductID=@productID_new

whereProductID=@productID_old

end

go

updateProductssetProductID='99'whereProductID='63'

go

select*fromProducts

select*fromShoppingCart

(当插入或删除一个商品ID时,如果ID在1—100操作成功,否则提示

商品ID超出所存商品ID范围,无法找到您需要的商品!

请核对后重新输入。

ifexists(select*fromsysobjectswherename='Product'andtype='tr')

droptriggerProduct

go

createtriggerProductonProductsforupdate,insert

as

declare@productIDchar(50)

select@productID=ProductIDfrominserted

if@productID>0and@productID<=100

begin

print'操作成功完成!

'

return

end

print'商品ID超出所存商品ID范围,无法找到您需要的商品!

请核对后重新输入。

'

rollbackTransaction

go

insertintoProducts(ProductID,CategoryID,ModelNumber,ModelName,Datetimed,Clicks,Sales,Commend)

values('78','12','3564N','微波炉','2002-05-1311:

29:

00','47','3000','1')

go

insertintoProducts(ProductID,CategoryID,ModelNumber,ModelName,Datetimed,Clicks,Sales,Commend)

values('188','11','888N','空气加湿器','2002-05-1311:

29:

00','20','450','1')

go

select*fromProducts

go

6.视图脚本:

SELECTdbo.Orders.ID,dbo.OrdersDetails.IDASExpr1,dbo.OrdersDetails.OrderID,

dbo.OrdersDetails.ProductID,dbo.OrdersDetails.Quantity

FROMdbo.OrdersINNERJOIN

dbo.OrdersDetailsONdbo.Orders.ID=dbo.OrdersDetails.ID

SELECTdbo.ShoppingCart.ID,dbo.Products.ProductID,dbo.Products.CategoryID,

dbo.Products.ModelNumber,dbo.Products.ModelName

FROMdbo.ShoppingCartINNERJOIN

dbo.ProductsONdbo.ShoppingCart.ProductID=dbo.Products.ProductID

7:

数据库恢复与备份:

数据库的完全备份

backupdatabaseOnlineShop

todisk='f:

\备份数据库\OnlineShop'

withinit

go

数据库的恢复

restoredatabaseOnlineShop

fromdisk='f:

\备份数据库\OnlineShop'

withrecovery

go

数据库差异备份

backupdatabaseOnlineShop

todisk='f:

\备份数据库\OnlineShop'

withinit

go

数据库的恢复

restoredatabaseOnlineShop

fromdisk='f:

\备份数据库\OnlineShop'

withnorecovery

go

restoredatabaseOnlineShop

fromdisk='f:

\备份数据库\OnlineShop'

withfile=2

go

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

当前位置:首页 > 经管营销 > 经济市场

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

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