网上购物车数据库设计

一、 概述

网上购物店的数据模型,它主要模式有产品: product ,帐户: Account 定单: Order 。和产品相关的表有 category product,item, inventory, supplier ;和 用户相关表有的 account signon profile 和定单相关的表有 orders,orderstatus,lineitem ,他们之间的整体关系如下 .

ERD

FK:Foreign Key

二、帐户模型

帐户模型,记录者用户的登录名称,密码。以及个人信息如地 址,性名,电话等,还有它在系统中的 profile 信息。表有 Account 主键是 userID, 它记录用户的基本信息,如 email,name 等。 Signon 表记录者 userID password Profile 表记录者用户的登录系统的系统设置。可以根据用户的类型,显示不同的登录信息。

 

1 account

create table account (

userid varchar(80) not null,

email varchar(80) not null,

name varchar(80) not null,

status char(2) null,

addr1 varchar(80) not null,

addr2 varchar(40) null,

city varchar(80) not null,

state varchar(80) not null,

zip varchar(20) not null,

country varchar(20) not null,

phone varchar(80) not null,

constraint pk_account primary key (userid)

)

说明: primary key userID, 它记录帐户的基本信息。

2 Signon

create table signon (

username varchar(25) not null,

password varchar(25) not null,

constraint pk_signon primary key (username)

)

说明:记录登录名和密码。

3 Profile

create table profile (

userid varchar(80) not null,

langpref varchar(80) not null,

favcategory varchar(30),

mylistopt int,

banneropt int,

constraint pk_profile primary key (userid)

)

说明:用户的登录信息,方便个性化定制。

4 Bannerdata

create table bannerdata (

favcategory varchar(80) not null,

bannername varchar(255) null,

constraint pk_bannerdata primary key (favcategory)

)

说明:记录不同的登录信息。

 

三、产品模型

产品的模型主要有分类,它是产品的大类。表 category 就是记录分类名称,描述信息。 Product

记录每个产品的基本信息,包括产品名称,和产品的描述。它是 一对多的关系。 Supplier

记录产品的提供者信息,包括提供者的名称,地址,状态等。 Item 记录产品的提供者,产

ID, 价格,状态。 Inventory 表记录产品的数量。关系如下:

 

 

1 category

create table category (

catid char(10) not null,

name varchar(80) null,

descn varchar(255) null,

constraint pk_category primary key (catid)

)

2 product

create table product (

productid char(10) not null,

category char(10) not null,

name varchar(80) null,

descn varchar(255) null,

constraint pk_product primary key (productid),

constraint fk_product_1 foreign key (category)

references category (catid)

)

3 item

create table item (

itemid char(10) not null,

productid char(10) not null,

listprice decimal(10,2) null,.unitcost decimal(10,2) null,

supplier int null,

status char(2) null,

attr1 varchar(80) null,

attr2 varchar(80) null,

attr3 varchar(80) null,

attr4 varchar(80) null,

attr5 varchar(80) null,

constraint pk_item primary key (itemid),

constraint fk_item_1 foreign key (productid)

references product (productid),

constraint fk_item_2 foreign key (supplier)

references supplier (suppid)

)

4 inventory

create table inventory (

itemid char(10) not null,

qty int not null

)

5 supplier

create table inventory (

suppid int  not null

name  varchar(80)

status   char(2)

attr1    varchar(80)

attr2    varchar(80)

city     varchar(80)

state    varchar(80)

zip      char(6)

phone    varchar(80)

constraint pk_supplier primary key (suppid),

)

四、定单模型

定单记录用户的选择产品信息,数量,表主要有 Orders, 记录用户的地址,帐户信息,总金

额。 Orderstatus 记录定单状态。 Lineitem 记录定单中的产品数量,单位价格,产品 ID

1 orders

create table orders (

orderid int not null,

userid varchar(80) not null,

orderdate date not null,

shipaddr1 varchar(80) not null,

shipaddr2 varchar(80) null,

shipcity varchar(80) not null,

shipstate varchar(80) not null,

shipzip varchar(20) not null,

shipcountry varchar(20) not null,

billaddr1 varchar(80) not null,

billaddr2 varchar(80) null,

billcity varchar(80) not null,

billstate varchar(80) not null,

billzip varchar(20) not null,

billcountry varchar(20) not null,

courier varchar(80) not null,

totalprice number(10,2) not null,

billtoname varchar(80) not null,

shiptoname varchar(80) not null,

creditcard varchar(80) not null,

exprdate char(7) not null,

cardtype varchar(80) not null,

locale varchar(20) not null,

constraint pk_orders primary key (orderid),

constraint fk_orders_1 foreign key (userid)

references account (userid)

)

定单的信息。

2 Orderstatus

create table orderstatus (

orderid int not null,

linenum int not null,

timestamp date not null,

status char(2) not null,

constraint pk_orderstatus primary key (orderid, linenum),

constraint fk_orderstatus_1 foreign key (orderid)

references orders (orderid)

)

定单中的产品状态

3 lineitem

create table lineitem (

orderid int not null,

linenum int not null,

itemid char(10) not null,

quantity int not null,

unitprice number(10,2) not null,

constraint pk_lineitem primary key (orderid, linenum),

constraint fk_lineitem_1 foreign key (orderid)

references orders (orderid)

)

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值