【SQL Server】网上购物商城数据库设计报告(专业课设作品附上sql文件文档)

【SQL Server】网上购物商城数据库设计报告(专业课设作品附上sql文件文档)目录一 需求分析 1 1 背景 1 2 数据需求 1 3 事物需求 1 4 数据流程图二 概念结构设计 2 1E R 图三 关系模式 3 2 数据逻辑结构四 物理结构设计 4 1 建立一个数据库 4 2 建立八张表 4 3 建立表的连接五 系统功能的实现 5 1 数据库建立 5 2 创建立数据表 5 3 建立表连接 5 4 数据初始 5 4 1 管理員初姶化 5 4 2 添加商品組信息 5 4 3 在各商品組加入商品 5 4 4 添加注册会員信息 5 4 6 添加枚限信息 5 4 7 添加管理员权限信息 5 5 查询 5 5 1 查询本站有哪些种类的商

一、需求分析

1.1 背景

1.2 数据需求

数据需求:

数据名称 数据类型 长度 列名
会员编号 字符型 10 会员的编号
姓名 文本型 20 会员的姓名
密码 字符型 20 会员的密码
电话 文本型 12 会员的电话
地址 文本型 80 会员的地址
商品编号 字符型 10 商品的编号
商品组编号 字符型 10 商品的类型
名称 文本型 20 商品的名称
价格 字符型 6 商品的价格
商品数量 字符型 10 购买商品的数量
购物车编号 字符型 10 购物车的编号
订单编号 字符型 10 购物时生成的编号
订单日期 时间型 10 购买商品的时间
最后总价 整型 6 购买商品的总价格
管理员编号 字符型 10 管理员的编号
管理员姓名 文本型 20 管理员的姓名
管理员密码 字符型 20 管理员的密码
联系电话 文本型 12 管理员的联系电话
商品组名称 文本型 20 商品组的名称
描述 文本型 80 商品组的具体描述
权限编号 字符型 10 权限的编号
权限名称 文本型 20 权限的名称
描述 文本型 80 权限具体描述

数据结构:

数据结构名 说明 组成
会员 记录会员的基本信息 会员编号、姓名、密码、电话、地址
商品 记录销售商提供的商品信息 商品编号、商品组编号、名称、价格、简介
订单 记录会员的购物信息 会员编号、商品编号、订单编号、订单日期、最后总价
购物车 存放会员需要购买的商品 会员编号、商品编号、购物车编号、商品数量
管理员 记录管理员的基本信息 管理员编号、管理员姓名、密码、联系电话
商品组 记录商品的类型 商品组编号、商品组名称、管理员编号、描述
管理员权限 记录管理员的基本信息 管理员编号、权限编号
权限 记录本系统的各类权限 权限编号、权限名称、描述

1.3 事物需求

1.4 数据流程图

二、概念结构设计

2.1 E-R图

在这里插入图片描述
2.1.5购物车信息实体E-R图:
在这里插入图片描述
2.1.6订单信息实体E-R图:
在这里插入图片描述
2.1.7管理员权限信息实体E-R图:
在这里插入图片描述
2.1.8权限信息实体E-R图:
在这里插入图片描述
2.1.9信息实体E-R图:
在这里插入图片描述









三、关系模式

3.2 数据逻辑结构

本站会员注册信息表:

列名 数据类型 长度 说明 是否为空
会员编号 字符型 10 会员的编号 主键,非空
姓名 文本型 20 会员的姓名 非空
密码 字符型 20 会员的密码 非空
电话 文本型 12 会员的电话
地址 文本型 50 会员的地址

本站商品具体信息表:

列名 数据类型 长度 说明 是否为空
商品编号 字符型 10 商品的编号 主键,非空
商品组编号 字符型 10 商品的类型 非空
名称 文本型 20 商品的名称 非空
价格 整型 6 商品的价格 非空
简介 文本型 800 商品的简介

购物车信息表:

列名 数据类型 长度 说明 是否为空
会员编号 字符型 10 会员的编号 非空
商品编号 字符型 10 商品的编号 非空
商品编数量 整型 10 购买商品的数量 非空
购物车编号 字符型 10 购物车的编号 主键,非空

订单信息表:

列名 数据类型 长度 说明 是否为空
会员编号 字符型 10 会员的编号 非空
商品编号 字符型 10 商品的编号 非空
订单编号 字符型 10 购物时生成的订单 主键,非空
订单日期 时间型 10 购买商品的时间 非空
最后总价 整型 6 购买商品的总价格 非空

管理员信息表:

列名 数据类型 长度 说明 是否为空
管理员编号 字符型 10 管理员的编号 主键,非空
管理员姓名 文本型 20 管理员的姓名 非空
密码 字符型 20 管理员的密码 非空
联系电话 字符型 12 管理员的联系电话 非空

商品组信息表:

列名 数据类型 长度 说明 是否为空
商品组编号 字符型 10 商品组的编号 主键,非空
商品组名称 文本型 20 商品组的姓名 非空
管理员编号 字符型 10 管理员的编号 非空
描述 文本型 50 商品的具体情况

管理员权限信息表:

列名 数据类型 长度 说明 是否为空
管理员编号 字符型 10 管理员的编号 主键,非空
权限编号 字符型 10 权限的编号 非空

权限信息表:

列名 数据类型 长度 说明 是否为空
权限编号 字符型 10 权限的编号 主键,非空
权限名称 文本型 20 权限的姓名 非空
描述 文本型 80 权限的描述 非空

四、物理结构设计

4.1 建立一个数据库

建立一个数据库: webshops

4.2 建立八张表

会员注册信息表、商品具体信息表、购物车信息表、订单信息表、管理员信息表、商品组信息表、管理员权限信息表、权限信息表;

4.3 建立表的连接

五、系统功能的实现

5.1 数据库建立

创建数据库:

CREATE DATABASE webshops ON ( NAME = webshops, FILENAME = 'd:\webshops.mdf', SIZE= 10, MAXSIZE= 50, FILEGROWTH= 5 ) LOG ON ( NAME =webshop , FILENAME = 'd:\webshops.ldf', SIZE = 5MB,MAXSIZE = 25MB, FILEGROWTH= 5MB) 

5.2 创建立数据表

//会员注册信息表 create table 会员注册信息表( 会员编号 char(10) not null primary key, 姓名 text not null, 密码 char(20) not null, 电话 text null, 地址 text null, ) //商品信息表 create table 商品信息表( 商品编号 char(10) not null, 商品组编号 char(10) not null, 名称 text not null, 价格 int null, 简介 text null, ) //购物车信息表 create table 购物车信息表( 购物车编号 char(10) not null primary key, 会员编号 char(10) not null, 商品编号 char(10) not null, 商品数量 int null, ) //订单信息表 create table 订单信息表( 订单编号 char (10) not null primary key, 会员编号 char (10) not null, 商品编号 char (10) not null, 订单日期 datetime not null, 最后总价 int not null, ) //管理员信息表 create table 管理员信息表( 管理员编号 char(10) not null primary key, 管理员姓名 text not null, 密码 char(20) not null, 联系电话 text null, ) // 商品组信息表 create table 商品组信息表( 商品组编号 char(10) not null primary key, 商品组名称 text not null, 管理员编号 char(10) not null, 描述 text null, ) // 管理员权限信息表 create table 管理员权限信息表( 管理员编号 char(10) not null primary key, 权限编号 char(10) not null, ) //权限信息表 create table 权限信息表( 权限编号 char(10) not null primary key, 权限名称 text null, 描述 text not null, ) 

5.3 建立表连接

建立各表之间的联系:

alter table 订单信息表 add constraint FK_订单信息表_REFRENCE_会员注册信息表 foreign key (会员编号) references 会员注册信息表(会员编号) alter table 订单信息表 add constraint FK_订单信息表_REFRENCE_商品信息表 foreign key (商品编号) references 商品信息表(商品编号) alter table 购物车信息表 add constraint FK_购物车信息表_REFRENCE_会员注册信息表 foreign key (会员编号) references 会员注册信息表 (会员编号) alter table 购物车信息表 add constraint FK_购物车信息表_REFRENCE_商品信息表 foreign key (商品编号) references 商品信息表(商品编号) alter table 商品组信息表 add constraint FK_商品组信息表_REFRENCE_管理员信息表 foreign key (管理员编号) references 管理员信息表(管理员编号) alter table 商品信息表 add constraint FK_商品信息表_REFRENCE_商品组信息表 foreign key (商品组编号) references 商品组信息表(商品组编号) alter table 管理员权限信息表 add constraint FK_管理员权限信息_REFRENCE_权限信息表 foreign key (权限编号) references 权限信息表(权限编号) alter table 管理员权限信息表 add constraint FK_管理员权限信息_REFRENCE_管理员信息表 foreign key (管理员编号) references 管理员信息表 (管理员编号) 

5.4 数据初始

5.4.1 管理員初姶化

添加数据:

insert into 管理员信息表(管理员编号,管理员姓名,密码,联系电话)values ('11001 ' ,'张三','zhangsan ' ,'') insert into 管理员信息表(管理员编号,管理员姓名,密码,联系电话)values ('11002','李四','lisi' ,'') insert into 管理员信息表(管理员编号,管理员姓名,密码,联系电话)values ('11003' ,'王五','wangwu' ,'') 

5.4.2添加商品組信息

insert into 商品组信息表(商品组编号,商品组名称,管理员编号,描述) values('001','女装','11001','女性') insert into 商品组信息表(商品组编号,商品组名称,管理员编号,描述) values('002','男装','11002','男性') insert into 商品组信息表(商品组编号,商品组名称,管理员编号,描述) values('003','童装','11001','儿童') insert into 商品组信息表(商品组编号,商品组名称,管理员编号,描述) values('004','零食','11002','美食') insert into 商品组信息表(商品组编号,商品组名称,管理员编号,描述) values('005','苹果','11002','水果') insert into 商品组信息表(商品组编号,商品组名称,管理员编号,描述) values('006','数码装','11003','国产') insert into 商品组信息表(商品组编号,商品组名称,管理员编号,描述) values('007','灯品','11003','装饰') insert into 商品组信息表(商品组编号,商品组名称,管理员编号,描述) values('008','汉服','11001','古风') insert into 商品组信息表(商品组编号,商品组名称,管理员编号,描述) values('009','卡地亚','11002','珠宝') insert into 商品组信息表(商品组编号,商品组名称,管理员编号,描述) values('010','欧米茄','11001','名表') insert into 商品组信息表(商品组编号,商品组名称,管理员编号,描述) values('011','兰蔻','11002','美妆') insert into 商品组信息表(商品组编号,商品组名称,管理员编号,描述) values('012','阿迪达斯','11002','球具') insert into 商品组信息表(商品组编号,商品组名称,管理员编号,描述) values('013','普拉达','11003','眼镜') insert into 商品组信息表(商品组编号,商品组名称,管理员编号,描述) values('014','帕克','11003','名笔') 

5.4.3 在各商品組加入商品

insert into 商品信息表(商品编号,商品组编号,名称,价格,简介)values('01001','004','老干妈','10','来自中国') insert into 商品信息表(商品编号,商品组编号,名称,价格,简介)values('01002','004','方便面','10','来自中国') insert into 商品信息表(商品编号,商品组编号,名称,价格,简介)values('02001','006','小米','2999','来自中国') insert into 商品信息表(商品编号,商品组编号,名称,价格,简介)values('02002','006','华为Pro30','2999','来自中国') insert into 商品信息表(商品编号,商品组编号,名称,价格,简介)values('02003','002','老干妈','10','来自中国') insert into 商品信息表(商品编号,商品组编号,名称,价格,简介)values('03001','001','波司登','780','来自外国') insert into 商品信息表(商品编号,商品组编号,名称,价格,简介)values('03002','001','cercle','1520','来自中国') insert into 商品信息表(商品编号,商品组编号,名称,价格,简介)values('04001','004','饼干','10','未知') insert into 商品信息表(商品编号,商品组编号,名称,价格,简介)values('05001','005','牛油果','30','来自墨西哥') insert into 商品信息表(商品编号,商品组编号,名称,价格,简介)values('05002','005','车厘子','80','来自美国') insert into 商品信息表(商品编号,商品组编号,名称,价格,简介)values('06001','006','窗帘','998','来自中国') insert into 商品信息表(商品编号,商品组编号,名称,价格,简介)values('07001','002','海澜之家','798','来自中国') insert into 商品信息表(商品编号,商品组编号,名称,价格,简介)values('08001','003','儿童之家','589','来自中国') insert into 商品信息表(商品编号,商品组编号,名称,价格,简介)values('010011','004','麻辣烫','20','来自中国') insert into 商品信息表(商品编号,商品组编号,名称,价格,简介)values('010021','004','陕西馍','10','来自中国') insert into 商品信息表(商品编号,商品组编号,名称,价格,简介)values('020011','006','OPPO Reno','2999','来自中国') insert into 商品信息表(商品编号,商品组编号,名称,价格,简介)values('020021','006','一加','2999','来自中国') insert into 商品信息表(商品编号,商品组编号,名称,价格,简介)values('020031','002','橄榄菜','10','来自中国') insert into 商品信息表(商品编号,商品组编号,名称,价格,简介)values('030011','010','欧家','780','来自外国') insert into 商品信息表(商品编号,商品组编号,名称,价格,简介)values('030021','0010','罗宾尼','1100','来自外国') insert into 商品信息表(商品编号,商品组编号,名称,价格,简介)values('040011','004','比利时饼干','30','比利时') insert into 商品信息表(商品编号,商品组编号,名称,价格,简介)values('050011','005','青芒','30','来自越南') insert into 商品信息表(商品编号,商品组编号,名称,价格,简介)values('050021','005','靑椰','80','来自中国') insert into 商品信息表(商品编号,商品组编号,名称,价格,简介)values('060011','006','床帘','998','来自中国') 

5.4.4添加注册会員信息

insert into 会员注册信息表(会员编号,姓名,密码,电话,地址)values('09002','李刚','','','南京') insert into 会员注册信息表(会员编号,姓名,密码,电话,地址)values('09003','陈明','','','上海') insert into 会员注册信息表(会员编号,姓名,密码,电话,地址)values('09004','陈志','','','天津') insert into 会员注册信息表(会员编号,姓名,密码,电话,地址)values('09005','张力','','','深圳') insert into 会员注册信息表(会员编号,姓名,密码,电话,地址)values('09006','王华','','','广州') insert into 会员注册信息表(会员编号,姓名,密码,电话,地址)values('09007','洪溪','','','重庆') insert into 会员注册信息表(会员编号,姓名,密码,电话,地址)values('09008','邓敏','','','成都') 

5.4.5添加购物车信息

insert into 购物车信息表(购物车编号,会员编号,商品编号,商品数量)values('','09001','03001',1) insert into 购物车信息表(购物车编号,会员编号,商品编号,商品数量)values('','09002','05001',3) insert into 购物车信息表(购物车编号,会员编号,商品编号,商品数量)values('','09004','06001',2) insert into 购物车信息表(购物车编号,会员编号,商品编号,商品数量)values('','09005','07001',1) 

5.4.6 添加枚限信息

insert into 权限信息表(权限编号,权限名称,描述)values('','普通店小二李子','可以添加删除或者修改自己名下的商品信息') 

5.4.7 添加管理员权限信息

insert into 管理员权限信息表(管理员编号,权限编号)values('11001','') insert into 管理员权限信息表(管理员编号,权限编号)values('11002','') insert into 管理员权限信息表(管理员编号,权限编号)values('11003','') 

5.5 查询

5.5.1 查询本站有哪些种类的商品

//查询所有 商品组的信息 select * from商品组信息表 //查询所有 商品的信息 select * from商品信息表 

5.5.2 建立商品视图

CREATE VIEW 商品 AS SELECT 商品编号,商品组编号,名称,价格,简介,描述 FROM 商品组信息表,商品信息表 WHERE a.商品组编号=b.商品组编号 

5.5.3 会员注册

某用户可以在系统中注册成为会员,以会员编号“09001”、姓名“李明”、密码“”、电话“”、 地址“北京”为例,注册为会员,在后台需要执行的SQL语句是:

insert into 会员注册信息表(会员编号,姓名,密码,电话,地址)values('09001','李子','','135XXXXXXXX','广州') 

5.5.4 会员修改信息

在本系统中注册的会员可以修改自己的信息,例如将会员编号为“09001的会员的密码,电话,地址分别修改为“”,“”,“广东省、珠海市”,

update 会员注册信息表 set 密码='',电话='135XXXXXXXX',地址='广东省、广州市' where 会员编号='09001' 

5.5.5 会员查看购物车信息

在本系统中注册的会员可以查看自己的购物车的信息, 例如会员编号为“09002的会,员查看自己的购物车

select * from 购物车信息表 where 会员编号='09002' 

5.5.6 会员查看订单信息

在本系统中注册的会员可以查看自己的订单信息,例如会员编号为“09003”的会员查,看自己订单

select * from 订单信息表 where 会员编号='09003' 

5.5.7 添加商品信息

管理员可以根据购物者的需求,添加自己管理的商品信息,以便购物者可以买到自己喜欢的商品,例如管理员添加商品编号“06002”、类型“数码”、名称“台灯”、价格“289”、简介“产于广州,可以根据实际需要调节灯的亮度,是学生的好助手,它有利于保护学生的眼睛”的商品。

insert into 商品信息表(商品编号,商品组编号,名称,价格,简介) values('06002','006','智能灯','75','产于美国,大学生智能电灯,可以自动要调节灯的亮度,它有利于学生学习,并且保护学生的眼睛') select * from 商品 

5.5.7 删除商品信息

管理员可以删除自己没有盈利的商品的信息,如管理员删除商品编号“04001”的商品

delete from 商品信息表 where 商品编号='04001' 

5.5.8 搜索商品信息

会员在本系统中可以根据自己的需要,分类搜索自己所需的商品,例如某会员需查看一个服饰类的商品

select * from 商品 where 商品组名称 LIKE '女装'or 商品组名称 LIKE '男装' 

5.5.9 生成订单信息

for insert AS BEGIN UPDATE订单 set最后总价=价格+15 where订单编号IN (SELECT 订单编号 from INSERTED) END 

1、首先生成订单视图

CREATE VIEW 订单 AS 会员编号,a.商品编号,最后总价,价格,订单日期 SELECT订单编号 FROM 订单信息表a,商品信息表b WHERE a.商品编号=b.商品编号 

2、建立触发器:

CREATE TRIGGER Insert 订单 ON 

3、生成订单

insert into 订单信息表(订单编号,会员编号,商品编号,订单日期,最后总价)values('','09001','07001','2019-06- 26 23:09:00',0) insert into 订单信息表(订单编号,会员编号,商品编号,订单日期,最后总价)values('','08001','06001','2019-06-26 :22:00:01',2) 

4、查看订单

select * from订单 

下载地址:

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/232216.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • redis 6379端口不通解决方法「建议收藏」

    redis 6379端口不通解决方法「建议收藏」1.reids服务器的6379端口telnet不通2. 查看reids进程和端口,都是存在的。只是ip地址是127.0.0.1而不是0.0.0.0,只是本机能使用3.查找redis的配置文件redis.conf 使用命令:find/-nameredis.conf 4.查找bind127.0.0.1所在的行数  使用命令:cat/usr/local/re…

    2022年5月9日
    158
  • 如何使用cmd进入MySQL

    如何使用cmd进入MySQL同时按下键盘上的win徽标+R,选择cmd,回车键打开cmd,在命令行中输入mysql-uroot-p切记只有这句话“mysql-uroot-p”,p后面没有分号“;”,否则就会报出以下错误,即提醒使用者不要在cmd命令行中输入密码,这种做法是不安全的。正确示例:C:\Users\hemiao>mysql-uroot-pEnterpassword:******WelcometotheMySQLmonitor.Commandsendwith;or

    2022年6月5日
    67
  • pg数据库杀进程_杀掉tomcat进程

    pg数据库杀进程_杀掉tomcat进程pg_cancel_backend()只能关闭当前用户下的后台进程向后台发送SIGINT信号,用于关闭事务,此时session还在,并且事务回滚pg_terminate_backend()需要superuser权限,可以关闭所有的后台进程向后台发送SIGTERM信号,用于关闭事务,此时session也会被关闭,并且事务回滚…

    2025年9月13日
    11
  • MATLAB参数估计 置信区间

    MATLAB参数估计 置信区间矩估计 moment X 2 通用命令 mle 格式 输出参数项 mle 分布函数名 X alpha N 说明 分布函数名有 bino 二项 geo 几何 hyge 超几何 poiss 泊松 uinf 均匀 unid 离散均匀 exp 指数 norm 正态 t T 分布 f F 分布 beta 贝塔 gam 伽吗 N 当为二项分布时需要 其他没有 正态总体的参数估计 z 2 14 2 10 2 13 2 15 2 13 2 12 2 13

    2025年6月17日
    3
  • Java8 Lambda表达式教程

    Java8新特性,Lambda表达式与集合类bulkoperation教程。迄今为止最全面的中文原创javalambda表达式教程。

    2022年4月7日
    50
  • 557 原型prototype和原型链__proto__:原理,函数的三种角色,for in,手写new

    557 原型prototype和原型链__proto__:原理,函数的三种角色,for in,手写new向对象底层运行机制的三句话*面向对象底层运行机制的三句话:*1.每一个函数(普通函数、内置类/构造函数、自定义类/构造函数)都具备一个属性:prototype[原型],属性值是一个对象[浏览

    2022年7月3日
    19

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号