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

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

网上超市购物车系统数据库设计说明书

拟制人

审核人_________________

批准人______________________ 【2010年3月12日星期五】

数据库设计说明书

1.引言

1.1编写目的

自Internet出现以来,大量的信息通过它迅速传播,突破了原有的通信方式。在网上,不仅可以迅速找到任何方面的相关内容,而且信息的传递也较以前快了许多。

2000年,全世界已拥有近10亿因特网用户,有一亿多台计算机互联,可以交换数据的网络超过了100万个,每年在网络上的交易次数超过10亿次。电子商务正是由于这种信息的快速流动和资源的大量集成而悄然崛起,并以惊人的速度发展着。

提供高效的内容丰富的Web商业服务是一项连续不断的任务,并不是做好了几个网页放在那里就可以了。所以,设计了这个网上超市购物车系统,以对电子商务有进一步的认识。

1.2背景

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

网上超市购物车系统

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

石河子大学

c. 本项目开发者:

严凤,丛莉莉

d. 本项目用户:

网上购物人群

1.3参考资料

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

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

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

2.外部设计

2.1支持软件

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

3.1概念结构设计

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

热门商品:

购物清单:

3.2 逻辑结构设计:

3.3关系图

3.3物理结构设计

4.存储过程脚本:

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

if exists(select * from sysobjects where name='Products_list' and type='p')

drop procedure Products_list

go

create PROCEDURE dbo.Products_list

@spname char(50),@sptupian char(50) output,@danjia money output,

@spmiaoshu char(250) output,@spshijian char(50) output

as

select @sptupian=ProductImage,@danjia=UnitCost,

@spmiaoshu=Description,@spshijian=Datetimed from Products

where ModelName=@spname

go

declare @spname char(50),

declare @sptupian char(50),

declare @danjia money ,

@spmiaoshu char(250),@spshijian char(50)

set @spname='蓝宝石'

exec Products_list @spname,@sptupian output,@danjia output,

@spmiaoshu output,@spshijian output

select @spname as 商品名称,@sptupian as 图片,@danjia as 单价,@spmiaoshu as 商品描述,@spshijian as 购买时间

go

(通过商品ID查询商品名称,商品数量,商品单价,商品描述,购物时间,购物车ID)if exists(select * from sysobjects where name='Shoppingcart_list' and type='p')

drop procedure Shoppingcart_list

go

create PROCEDURE dbo.Shoppingcart_list

@ProductID char(50),

@spname char(50) output,@spshuliang char(50) output,@danjia money output,

@spmiaoshu char(250) output,@spshijian char(50) output,@gouwuchengID char(50) output

as select @spname=ModelName, @spshuliang=Quantity,@danjia=UnitCost,

@spmiaoshu=Description,@spshijian=ShoppingCart.Datetimed,@gouwuchengID=CartID from

Products,ShoppingCart

where ShoppingCart.ProductID=Products.ProductID and Products.ProductID=@ProductID

go

declare @ProductID char(50),

@spname char(50),@spshuliang char(50) ,@danjia money ,

@spmiaoshu char(250),@spshijian char(50),@gouwuchengID char(50)

set @ProductID='64'

exec Shoppingcart_list @ProductID,@spname output,@spshuliang output,@danjia output,

@spmiaoshu output,@spshijian output,@gouwuchengID output

select @ProductID as 商品ID,@spname as 商品名称,@spshuliang as 商品数量,@danjia as 商品单价,

@spmiaoshu as 商品描述,@spshijian as 购买时间,@gouwuchengID 购物车ID

Go

5.触发器脚本:

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

if exists (select * from sysobjects where name ='Product_ID' and type='tr')

drop trigger Product_ID

go

create trigger Product_ID on Products for update as

if update(ProductID)

begin

declare @productID_new char(50),@productID_old char(50)

select @productID_new=ProductID from inserted

select @ProductID_old=ProductID from deleted

update ShoppingCart set ProductID=@productID_new

where ProductID=@productID_old

end

go

update Products set ProductID='99' where ProductID='63'

go

select * from Products

select * from ShoppingCart

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

商品ID超出所存商品ID范围,无法找到您需要的商品!请核对后重新输入。)if exists (select * from sysobjects where name ='Product' and type='tr')

drop trigger Product

go

create trigger Product on Products for update,insert

as

declare @productID char(50)

select @productID=ProductID from inserted

if @productID>0 and @productID<=100

相关文档
最新文档