第三篇 基于JSP 技术的网上购书系统—— 数据库系统设计(网上商城、仿淘宝、当当、亚马逊)

news2024/11/17 16:50:49

目录

1.逻辑关系设计

2.物理设计 

2.1管理员表

 2.2留言表

2.3会员登录表

2.4会员表

2.5订单表

2.6订单商品表

2.7产品表

2.8产品货架表

 2.9收藏表

2.10类别表

2.11新闻表


        数据库系统是用来保存数据的软件系统,当今比较流行的数据库系统,如 MS SQL Server、mySQL 和 Oracle 等均采用关系数据库形式来实现数据的存储、查询等。关系数据库模型是数据库技术发展到今天被广泛采用的技术形式。

        使用数据库的好处就是能够方便的通过编程实现大量数据的存储、检索和统计分析。如果不使用数据库系统,则要进行这样的处理就非常繁琐甚至不可行。比如,MS Word 就无法进行数据的统计分析,只能是文字编辑;MS Excel 虽然可以统计分析,但无法实现网络上的数据存储和共享。诸如此类问题都由数据库系统解决。

        伴随数据库系统的出现,出现了针对数据库系统的编程技术,Java 技术也是如此,可以进行数据库编程并对其中存储的数据进行处理。

        数据库编程的核心是数据库查询语言SQL ,Java 通过传递这些语言编写的命令来操纵数据库中的数据。

        本系统采用了这种技术方式来操纵数据库,这是因为本系统要处理的数据也具备数量多、需要共享、需要统计分析等特点,如果不使用关系数据库系统,则几乎无法实现这些功能。

1.逻辑关系设计

        根据系统的要求,将设计十一个表格,分别用来存储数据信息和管理过程中产生的数据流信息。其中包含的表格的具体说明如表所示

数据库表格

表  格

逻  辑  名

作  用

管理员表

tb_admin

保存管理员信息

留言表

tb_guest

保存在线留言、评价信息

会员登录表

tb_logininfo

保存会员的登录信息

会员表

tb_userinfo

保存会员信息

订单表

tb_order

保存订单信息

订单商品表

tb_orderproduct

保存订单中商品的信息

产品表

tb_productinfo

保存图书基本信息

产品货架表

tb_sellinfo

保存图书货架信息

收藏表

tb_shoucang

保存收藏信息

类别表

tb_sort

保存图书类别信息

新闻表

tb_news

保存新闻信息

        本系统各表之间具有如图6.1所示逻辑关系。

图6.1 表6-1的逻辑关系
图6.1 表6-1的逻辑关系

2.物理设计 

2.1管理员表

        在该表中使用了SQL Server数据库中的一个特殊字段类型——自动编号字段,也就是可以自动递增的字段,用来做主键。这样能保证记录的唯一性,符合关系数据库表的范式,也非常便于维护。

        当然,也可以自己定义一个字段作为主键,但要维护该字段数据的唯一性,否则系统将出现数据冗余的错误。因此,多数使用SQL Server数据库的设计人员都采用这种自动编号字段。

 管理员表的物理结构说明

名  称

类  型

长  度

说  明

id

整型

4

自动编号,作为主键

username

字符

10

管理员名称

password

字符

10

管理员密码

 2.2留言表

        在这个表中保存了留言信息。当然其中也包括了用户对商品的评论,使用commenttype字段来标示留言和商品评论。

留言表的物理结构说明

名  称

类  型

长  度

说  明

id

整型

4

自动编号,作为主键

username

字符

20

留言人名称,和会员登录表对应

commenttype

字符

50

留言类型

ip

字符

50

留言人ip地址

time

字符

30

留言时间

title

文本

留言标题

guest

文本

留言内容

reply

文本

留言回复内容

state

字符

50

留言状态

pid

字符

30

产品编号

2.3会员登录表

        在这个表中保存了会员的登录信息。其中包含了会员的密码保护问题和会员状态等信息。本系统中“密码保护问题”、“会员标识”两个字段没有用到,在这里给出为了是在后续开发中的扩展需要。

会员登录表的物理结构说明

名  称

类  型

长  度

说  明

id

整型

4

自动编号,作为主键

username

字符

20

会员登录名

password

字符

20

会员登录密码

wenti

字符

50

密码保护问题

daan

字符

50

密码保护问题答案

lastlogintime

字符

30

最近登录时间

tag

字符

10

会员标识

state

字符

10

会员状态

2.4会员表

        在这个表中保存了会员的基本信息。 

会员表的物理结构说明

名  称

类  型

长  度

说  明

id

整型

4

自动编号,作为主键

username

字符

20

会员登录名,和会员登录表对应

realname

字符

50

真实姓名

email

字符

100

邮箱

telephone

字符

11

手机

phone

字符

15

固话

address

字符

100

地址

postcode

字符

10

邮编

qq

字符

20

QQ号码

registtime

字符

30

注册时间

2.5订单表

        在这个表中保存了订单的信息。这个表中存放了收货人的信息,因为在实际的购物活动中购买者并不一定就是收货者,所以需要用户在购买时输入收货信息,当然如果购买者既是收货者时,本表的信息会从会员信息表中获得。

订单表的物理结构说明

名  称

类  型

长  度

说  明

id

整型

4

自动编号,作为主键

ordernumber

字符

50

订单号

realname

字符

50

收货人真实姓名

telephone

字符

11

收货人手机号码

phone

字符

15

收货人固话

email

字符

100

收货人邮箱

postcode

字符

10

收货人邮编

address

字符

100

收货人地址

method

字符

10

配送方式

remark

文本

备注

state

字符

50

订单状态,待审核、正在配货、等待发货、已经发货、已经收货、已取消

time

字符

30

下单日期

username

字符

20

会员登录名称,和会员登录表对应

total

货币

总价

lock

字符

10

订单锁定状态

payment

字符

50

支付方式,货到付款、网上支付

paystate

字符

50

支付状态,已支付、未支付

2.6订单商品表

        在这个表中保存了订单商品的信息。一个订单会对应多种商品,就要使用订单号作为外键,使订单表和订单商品表建立一对多的关系。 

订单商品表的物理结构说明

名  称

类  型

长  度

说  明

id

整型

4

自动编号,作为主键

ordernumber

字符

50

订单号,和订单表对应

productnumber

字符

30

商品编号,和产品表对应

bookname

字符

200

书名,与商品表对应

price

货币

单价

quantity

字符

10

购买数量

sum

货币

总价

description

文本

图书描述

2.7产品表

        在这个表中保存了产品(图书)的信息。其中用到的展示图片是保存到硬盘上的,在数据库中只记录了对其的引用(存放地址)。 

产品表的物理结构说明

名  称

类  型

长  度

说  明

id

整型

4

自动编号,作为主键

productnumber

字符

30

商品编号

bookname

字符

41

书名

author

字符

100

作者

publish

字符

100

出版社

publishtime

字符

30

出版时间

supply

字符

100

供应商

description

文本

描述

imgurl

字符

500

图书图片

2.8产品货架表

        在这个表中保存了图书货架信息。产品表中保存的是产品的固有属性,而产品货架表中保存的是产品的销售信息,如市场价、售价、进价等等。 

产品货架表的物理结构说明

名  称

类  型

长  度

说  明

id

整型

4

自动编号,作为主键

productnumber

字符

30

产品编号,与产品表对应

marketprice

货币

市场价

price

货币

售价

cost

货币

进价

profit

货币

利润

groom

字符

10

是否推荐

state

字符

50

是否上架

sort

字符

50

类别

time

字符

30

上架时间

sellnumber

字符

10

销售数量

stock

字符

20

库存

 2.9收藏表

        在这个表中保存了用户收藏的图书。

收藏表的物理结构说明

名  称

类  型

长  度

说  明

id

整型

4

自动编号,作为主键

productnumber

字符

30

产品编号,与产品表对应

username

字符

20

会员登录名,与会员登录信息表对应

2.10类别表

在这个表中保存了产品类别信息。

类别表的物理结构说明

名  称

类  型

长  度

说  明

id

整型

4

自动编号,作为主键

sortname

字符

50

类别名称

goole

文本

Goole描述(未使用)

state

字符

10

状态

father

字符

50

上级分类名称

2.11新闻表

在这个表中保存了新闻信息。 

新闻表的物理结构说明

名  称

类  型

长  度

说  明

id

整型

4

自动编号,作为主键

newstitle

字符

200

新闻标题

newscontent

文本

新闻内容

time

字符

30

发布时间

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1211292.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Linux在线安装MySQL8.0.24安装、MySQL数据备份和恢复

一、 Linux在线安装MySQL8.0.24 如果机器上已经有MySQL5.7版本需要先卸载 首先,需要停止MySQL服务。可以通过以下命令来停止服务: sudo systemctl stop mysqld接下来,我们需要卸载MySQL5.7。可以通过以下命令来卸载: sudo yum…

为什么串行通信中停止位(停止bit、stop bit)通常使用高电平?

文章目录 基于高电平的停止位选择:理解其深层原因引言数据通信和停止位数据通信简介停止位的定义和作用 为什么选择高电平作为停止位?硬件的考虑误码率的影响 总结参考资料 基于高电平的停止位选择:理解其深层原因 引言 在数字通信中&#…

WPF小知识

在编写WPF程序遇到一些小问题&#xff0c;所以记录起来&#xff0c;查其他方便。 Label自动换行 网上搜的都不能自动换行&#xff0c;发现使用Run 就可以。在脚本中直接调用labTip.Text进行赋值就可以了。 <Label Foreground"#FF9E9E9E" FontSize"16"…

人工智能基础_机器学习035_多项式回归升维实战2_使用sklearn的PolynomialFeatures进行升维---人工智能工作笔记0075

我们再来做一个升维处理,这里我们不再自己去对数据进行比如,相乘操作,来给数据手动添加维度了, 这里我们用sklearn库提供的PolynomialFeatures来自动对数据进行升维. from sklearn.linear_model import LinearRegression # PolynowlalFeatures,多项式升维处理 from sklearn.…

一招学会!柴油发电机监测真的超级简单!

随着现代社会对电力的不断需求和对可靠性的高要求&#xff0c;柴油发电机的监控变得愈发重要。监控系统的引入不仅可以提高柴油发电机的运行效率&#xff0c;还能有效预防潜在故障&#xff0c;确保系统稳定运行。 客户案例 工业生产场 在工业生产场&#xff0c;柴油发电机是关…

小红书电商文案怎么创作,撰写事项!

电商文案就像是连接着品牌方与消费者之间的桥梁。优秀的电商文案&#xff0c;能够帮助消费者在第一时间内&#xff0c;了解产品&#xff0c;与品牌产生链接&#xff0c;最终带来消费转化。那么小红书电商文案怎么创作&#xff0c;撰写事项&#xff01;今天来马文化传媒为大家总…

Java项目maven打包,打jar包中不包含项目引用第三方jar包,以及打war包不能将其放到lib的问题

在使用maven进行打包项目中&#xff0c;想要将第三方的jar包放入&#xff0c;有两种方法&#xff1a;一种将jar包上传到maven库中&#xff0c;第二种再pom.xml中进行配置&#xff0c;第三种 情况是需要打包成war包放入tomcat中&#xff1b;具体如下&#xff1a; 第一种&#x…

MyEclipse 2017 安装与pj

关于Myeclipse 2017的安装与破解 MyEclipse企业级工作平台&#xff08;MyEclipseEnterprise Workbench &#xff0c;简称MyEclipse&#xff09;是对EclipseIDE的扩展&#xff0c;利用它我们可以在数据库和JavaEE的开发、发布以及应用程序服务器的整合方面极大的提高工作效率。…

【带头学C++】----- 六、结构体 ---- 6.6 结构体的指针成员

6.5结构体指针变量 结构体的指针变量:本质是变量只是该变量保存的是结构体变量的地址 6.5.1结构体指针变量的定义 通过指针&#xff0c;可以访问到我们结构体变量的值 可以通过 -> 符号 访问到结构体变量 6.5.2 结构体数组元素的指针变量 指针变量保存结构体数组元素…

Django视图层

视图层 django视图层&#xff1a;Django项目下的views.py文件&#xff0c;它的内部是一系列的函数或者是类,用来处理客户端的请求后处理并返回相应的数据 三板斧 HttpResponse # 返回字符串 render # 返回html页面&#xff0c;并且在返回浏览器之前还可以给html文件…

《网络协议》06. HTTP 补充 · HTTPS · SSL/TLS

title: 《网络协议》06. HTTP 补充 HTTPS SSL/TLS date: 2022-10-06 18:09:55 updated: 2023-11-15 07:53:52 categories: 学习记录&#xff1a;网络协议 excerpt: HTTP/1.1 协议的不足、HTTP/2、HTTP/3、HTTP 协议的安全问题、SPDY、HTTPS、SSL/TLS、OpenSSL。 comments: fa…

数据分析法宝,一个 SQL 语句查询多个异构数据源

随着企业数据量呈现出爆炸式增长&#xff0c;跨部门、跨应用、跨平台的数据交互需求越来越频繁&#xff0c;传统的数据查询方式已经难以满足这些需求。同时&#xff0c;不同数据库系统之间的数据格式、查询语言等都存在差异&#xff0c;直接进行跨库查询十分困难。 原生跨库查…

基础课3——客服中心现状

智能客服服务的对象就是客服中心&#xff0c;智能客服旨在帮助客服中心更好、更快地解决客户的问题。 1.客服中心的背景 随着数字化时代的到来&#xff0c;客户服务已经成为了企业中不可或缺的一部分。消费者对于客户服务的期望也在不断变化&#xff0c;他们不再满足于仅仅在…

揭秘拍卖竞价源码的前沿技术:加密、智能合约与更多

在数字时代的今天&#xff0c;拍卖竞价源码成为了炙手可热的话题。作为该领域的专家&#xff0c;我将带您深入了解这一前沿技术的奥秘。本文将揭示拍卖竞价源码的工作原理、加密技术的应用、智能合约的作用以及其他相关技术。 2. 拍卖竞价源码的工作原理 拍卖竞价源码是一种用…

配置DHCP服务器

概述 DHCP(Dynamic Hast Configuration Protocal)就是动态主机配置协议&#xff0c;可以自动配置主机的IP地址、子网掩码、网关及DNS等TCP/IP信息。以DHCP可以有效地降低客户端IP地址配置的复杂度和网络的管理成本。如果路由器能够转发DHCP请求&#xff0c;只需要在一个子网中…

传统工艺的数字时代转变:十八数藏的文化创新

在传统工艺和数字时代的交汇之处&#xff0c;十八数藏以其独特的文化创新走在了前列。这场数字时代的转变为传统工艺注入了新的生命和活力。 十八数藏的文化创新并非简单的数字应用&#xff0c;而是一场深刻的转变。通过数字技术&#xff0c;传统工艺被赋予了新的表达方式&…

网上赚钱有哪些项目可以长期做?盘点六个靠谱的副业项目

很多想扩宽收入来源&#xff0c;或者准备从事网络副业项目的人来说&#xff0c;在网上找到一个靠谱的项目也并非易事。现在的网络时代&#xff0c;网上赚钱成了一个备受关注的话题。但是现在却到处充斥着金钱和骗局的诱惑&#xff0c;不谨慎的朋友很容易被骗踩坑。 那么&#x…

吊椅在欧盟做EN581报告认证

什么是EN 581标准&#xff1f; EN 581标准是欧洲标准化委员会制定的关于户外家具机械物理性能要求的标准。该标准主要涉及耐候性、抗静态载荷、耐磨性、抗腐蚀性等方面的要求。 5.2 如何提高家具的抗静态载荷性能&#xff1f; 提高家具的抗静态载荷性能可以通过增加家具结构的…

系统之家重装Win10系统教程图解

系统之家官网给用户们提供了不同品牌系统的下载&#xff0c;帮助更多的用户完成Win10系统的重新安装&#xff0c;从而解决自己Win10系统所遇到的问题。如果有用户不清楚详细的重装系统步骤&#xff0c;那么可以参考下面小编分享借助系统之家装机大师软件重装Win10系统教程图解介…

在抖音电商,他们帮女性实现了L码自由

“很多&#xff08;女装&#xff09;店铺只做到L&#xff0c;甚至L&#xff08;其实&#xff09;是M码。”身高1米6、体重60公斤的达人鸭嗓明明120斤 在抖音上吐槽道&#xff0c;“尤其是夏天的连衣裙&#xff0c;胸围很多不超过85厘米&#xff0c;那它的意思就是你可以胖&…