B2C中构造数据库应用

 

施吉鸣

 

    摘要:本文提出了B2C电子商务中在Web服务器端装载MS Access数据库,同时结合ASP技术访问数据库的设计方案,并给出了网上购物系统的基本框架和功能。

 

一、B2C概念

电子商务是指两方或多方通过计算机和某种形式的计算机网络(直接连接的网络或Internet等等)进行商务活动的过程。它包括企业和企业之间的商务活动、网上的零售业和金融企业的数字化处理过程。按照交易主体划分,电子商务的经营模式可以划分为两种:一种是企业对企业的电子商务,即B2B;另外一种是企业对消费者的电子商务,即B2C

 

二、数据库设计方案

B2C通过WEB技术将产品、服务和信息销售给顾客。B2C的典型例子是网上购物,网上购物从前台看是一种特殊的WEB服务器。现代WEB网站的多媒体支持和良好的交互性功能成为建立这种虚拟商店的基础,使得顾客可以象在真实的超级市场一样推着购物车挑选商品,并最后在付款台结帐。这也就构成网上购物软件的三大支柱:商品目录、顾客购物车和付款台。好的商品目录可以使顾客通过最简单的方式找到其需要的商品,并可以通过文字说明、图象显示、客户评论等充分了解产品各种信息;商品购物车则衔接商店和个人,客户既可以把他喜欢的商品一个个放到购物车里,也可以从购物车中取出,直到最后付款。

网上购物软件设计的过程中需要涉及数据库技术的应用。本文通过在Web服务器端装载MS Access数据库,同时结合ASP技术访问数据库的设计方案,实现了网上购物系统的基本功能。其实包括数据查询,数据录入以及网上购物系统都可以用Script Run At Server Side(运行在主机端的程序脚本)来实现。包含有关数据库查询的页面,需要涉及ADO(一种类似DAORDO的数据库访问对象)。

 

三、网上购物系统的基本框架和功能

系统由7个asp页面和1个access数据库组成,分别是index.asp、buy.asp、check.asp、add.asp、clear.asp、nothing.asp、util.asp和shopping.mdb,这8个文件组成网上购物系统的基本框架;实现的功能可由下图所示:

 

数据库shopping.mdb中包括有categoryproducts两个表,结构如下:

 

category

CategoryID

Description

1

书刊杂志

2

家用电器

3

通讯器材

4

化妆品

5

服装服饰

6

医疗保健

 

products

CategoryID

ProductID

ProductName

Price

Description

1

Book01

妈妈宝宝

48

针对最有品味的城市准妈妈和新手妈妈读者

1

Book02

中国时装

45

《中国时装》是一本好书

1

Book03

大众机械师

72

集生活技能于一体的硬性现代男性杂志

1

Book04

新现代画报

300

内容多元化信息快捷,消费及娱乐情报

1

Book05

亚洲女友

54

标榜亚洲时尚风格之女性刊物

3

Comm01

诺基亚7110手机

1520

十大热门商品之一

3

Comm02

爱立信T28sc手机

1000

铁灰

3

Comm03

摩托罗拉P7689手机

990

冰河蓝

3

Comm04

诺基亚3310手机

850

十大热门商品之一

3

Comm05

飞利浦989手机

980

深灰

3

Comm06

TCL美之声无绳电话

410

HW868 P/TSD(LCD)无绳来电显示电话

2

Elect01

JNC MP3播放器

1990

SSF-881 T3,功能最全,外表最炫!

2

Elect02

柯达 DC4800 数码相机

8360

柯达DC4800(16M)

2

Elect03

索尼摄像机 TRV320E套餐A

8055

实惠的价格,齐全的附件

2

Elect04

索尼MD机

2998

R91,完美音质,真实再现

2

Elect05

富士数码相机

7260

FinePix4900 16M,瞬间感觉,真实再现

2

Elect06

爱华可视VCD机

4880

KM88,迷你可视,移动电影院

2

Elect07

空气净化器 KJ180-TGS

788

适用30-45平方米,风速三档调节

2

Elect08

卡西欧数码相机 QV-3000EX

5940

华美自然色彩,仅在按动的瞬间

5

Fashion01

宜而爽防螨抗寒绒保暖女内衣

238

上下层采精梳面料,柔软舒适

5

Fashion02

爱慕Beauty Bra蕾丝花边内裤系列

80

KC251B-L(浅杏黄)

5

Fashion03

欣蒂蕾丝性感内衣 H-7204

100

弹性奇佳闪闪发光,具有舒适塑身效果

6

Health01

朵而胶囊

78

益气滋阴,补血养颜

4

Makeup01

曼秀雷敦变色什果冰润唇膏

60

既是口红,更是润唇膏,还能防晒

4

Makeup02

娇韵诗身体深层磨砂膏

390

深层清洁、活化肌肤

4

Makeup03

伊莉莎伯·雅顿紧肤乳液

510

功能全面,能帮您的肌肤抵挡岁月侵袭

4

Makeup04

欧洲之萃造物女神众望II香水

168

释放令人兴奋的诱惑,全属女性的柔情

 

进入系统主页时,index.aspshopping库中读取category表,显示各类购物区的名称用于导购,在进入指定购物区后,buy.aspshopping库中读取products表,显示购物区中各种物品的名称,这时您就可以随心所欲地购物了。

下面给出index.aspbuy.asp的源代码:

index.asp

<%

Const Head="网上购物超市"

DbPath = SERVER.MapPath("Shopping.mdb")

Set conn = Server.CreateObject("ADODB.Connection")

conn.open "driver={Microsoft Access Driver (*.mdb)};dbq=" & DbPath

Set rs=conn.Execute( "Category" )

%>

<HTML>

<HEAD><TITLE><%=Head%></TITLE></HEAD>

<BODY BACKGROUND="nabkgnd.jpg">

<H1 ALIGN=CENTER><%=Head%><HR></H1>

<H2>进入购物区:</H2>

<UL>

<%

  While Not rs.EOF

%>

<A HREF=buy.asp?CategoryID=<%=rs("CategoryID")%>&Description=<%=Server.URLEncode(rs("Description"))%>>

<%=rs("Description")%></A><P>

<%

     rs.MoveNext   

  Wend

%>

</UL>

<HR>

</BODY>

</HTML>

 

buy.asp

<!--#include file="util.asp" -->

<%

DbPath = SERVER.MapPath("Shopping.mdb")

Set conn = Server.CreateObject("ADODB.Connection")

conn.open "driver={Microsoft Access Driver (*.mdb)};dbq=" & DbPath

CategoryID=Request("CategoryID")

Description=Request("Description")

Head="网上购物超市 - [" & Description & "] "

sql = "Select * From Products Where CategoryID=" & CategoryID

sql = sql & " Order By ProductID"

Set rs = conn.Execute( sql )

%>

<HTML>

<HEAD><TITLE><%=Head%></TITLE></HEAD>

<BODY BACKGROUND="nabkgnd.jpg">

<H1 ALIGN=CENTER><%=Head%><HR></H1>

<CENTER>

<Form Action=add.asp Method=POST>

<TABLE Border=1>

<TR BGCOLOR=#00FFFF>

<TD>挑选</TD><TD>商品编号</TD><TD>商品名称</TD><TD>价格</TD><TD>商品简介</TD></TR>

<%

   While Not rs.EOF

     IsCheck=""

     If InStr(Session("ProductList"), rs("ProductID")) > 0 Then

        IsCheck="Checked"

     End If

%>

<TR>

<TD Align=Center>

<Input Type=CheckBox Name="ProductID" Value="<%=rs("ProductID")%>" <%=IsCheck%>>

</TD>

<TD><%=rs("ProductID")%></TD>

<TD><%=rs("ProductName")%></TD>

<TD Align=Right><%=rs("Price")%></TD>

<TD><A HREF=<%=rs("Link")%>><%=rs("Description")%></A></TD>

</TR>

<%

      rs.MoveNext

   Wend

%>

</TABLE>

<Input Type=Submit Value="放入购物车">

</Form>

<HR>

<A HREF=check.asp>查看购物车</A>  <A HREF=clear.asp>退回所有物品</A><P>

<% ListCategory conn %>

</CENTER>

</BODY>

</HTML>

 

四、小结

    本文论述的方案已在微软NT网络实验系统和Internet上实现,如果结合银行提供的网上支付网关即可组成完整的B2C网上购物系统。由于系统构建中使用了MS Access数据库,没有涉及诸如SQL Server等大型数据库,因此系统设计简单、方便实用,适合于大多数中小规模网上购物的应用场合。作者提供本文中所有的aspmdb文件供有兴趣的同行实验