购物网站数据库设计

购物网站数据库设计,第1张

一、概述

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

二、帐户模型

帐户模型,记录者用户的登录名称,密码。以及个人信息如地址,性名,电话等,还有它在系统中的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)

cityvarchar(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)

)

购物网站属于商务系统,最好使用性能较强的VPS,当然安装的话普通的100M虚拟主机 100M SQL数据库都可以了,考虑到速度和稳定,还是建议选择有自主管理权、独立资源的VPS服务器,而且现在也不贵。 可以提供给你试用。

数据库是按照数据结构来组织、存储和管理数据的仓库,数据管理不再仅仅是存储和管理数据,而转变成用户所需要的各种数据管理的方式。数据库中的数据是为众多用户所共享其信息而建立的,已经摆脱了具体程序的限制和制约。一种品牌可以编一个商品码作为主键,其他的都可以是它的属性,希望能帮助到你


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9370975.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-27
下一篇 2023-04-27

发表评论

登录后才能评论

评论列表(0条)

保存