仿京东项目——京西商城(数据库设计)

文章目录

  • 仿京东——京西商城
    • 数据库设计
      • 建立E-R图
      • 数据库表设计
        • 用户表
        • 商品表
        • 订单表
        • 订单详情表
        • 评论表
        • 购物车表
        • 购物车项表

仿京东——京西商城

数据库设计

主要实体有:

  • 用户

    • 用户ID(User_ID):唯一标识用户的主键

    • 用户名(User_Name):用户名

    • 用户邮箱(Email):用户的电子邮箱地址

    • 用户手机号码(Phone_Number):用户的联系电话

    • 用户密码(Password):用户的登录密码

    • 用户注册时间(Registration_Time):用户注册商城的时间

  • 商品

    • 商品ID(Product_ID):唯一标识商品的主键
    • 商品名称(Product_Name):商品的名称
    • 商品描述(Product_Description):商品的详细描述
    • 商品价格(Product_Price):商品的销售价格
    • 商品库存(Product_Stock):商品的库存数量
    • 商品状态(Product_Status):商品的上架状态(如上架/下架)
    • 商品图片(Product_Image):商品的图片URL或路径
  • 订单

    • 订单ID(Order_ID):唯一标识订单的主键

    • 用户ID(User_ID):关联到用户的ID

    • 订单状态(Order_Status):订单的当前状态(如待支付、已支付、已发货、已完成、已取消)

    • 订单总金额(Total_Amount):订单的总价值

    • 订单下单时间(Order_Time):订单创建的时间

  • 订单详情

    • 详情ID(Detail_ID):唯一标识订单详情的主键

    • 订单ID(Order_ID):关联到订单的ID

    • 商品ID(Product_ID):关联到商品的ID

    • 数量(Quantity):订单中商品的数量

    • 单价(Unit_Price):商品在订单中的销售价格

  • 评论

    • 评论ID(Comment_ID):唯一标识商品评论的主键

    • 用户ID(User_ID):关联到用户的ID

    • 商品ID(Product_ID):关联到商品的ID

    • 评分(Comment_Rating):用户对商品的评分

    • 评论内容(Comment):用户对商品的评论内容

    • 评论时间(Comment_Time):用户对商品的评论时间

  • 购物车

    • 购物车ID(Cart_ID):购物车的唯一标识符

    • 用户ID(User_ID):关联到创建购物车的用户的唯一标识符

    • 总价(Total_Price):购物车中所有商品的总价值

  • 购物车项(Cart Item)

    1. 购物车项ID(Item_ID):购物车项的唯一标识符
    2. 购物车ID(Cart_ID):关联到购物车的唯一标识符
    3. 商品ID(Product_ID):关联到商品的唯一标识符
    4. 数量(Quantity):商品在购物车中的数量

建立E-R图

在这里插入图片描述

数据库表设计

用户表
字段名称类型长度约束类型
用户IDINT12PRIMARY KEY
用户名VARCHAR255NOT NULL,UNIQUE
用户邮箱VARCHAR255NOT NULL,UNIQUE
用户手机号码VARCHAR11NOT NULL,UNIQUE
用户密码VARCHAR60NOT NULL
用户注册时间DATETIMEDEFAULT CURRENT_TIMESTAMP
商品表
字段名称类型长度约束类型
商品IDINT12PRIMARY KEY
商品名称VARCHAR255NOT NULL,UNIQUE
商品描述TEXTNOT NULL,UNIQUE
商品价格DECIMAL(10, 2)NOT NULL
商品库存INT12NOT NULL
商品图片VARCHAR255NOT NULL
订单表
字段名称类型长度约束类型
订单IDINT12PRIMARY KEY
用户IDINT12NOT NULL,FOREIGN KEY
订单状态VARCHAR50NOT NULL
订单总金额DECIMAL(10, 2)NOT NULL
订单下单时间DATETIMEDEFAULT CURRENT_TIMESTAMP
订单详情表
字段名称类型长度约束类型
详情IDINT12PRIMARY KEY
订单IDINT12NOT NULL,FOREIGN KEY
商品IDINT12NOT NULL,FOREIGN KEY
数量INT12NOT NULL
商品单价DECIMAL(10, 2)NOT NULL
评论表
字段名称类型长度约束类型
评论IDINT12PRIMARY KEY
用户IDINT12NOT NULL,FOREIGN KEY
商品IDINT12NOT NULL,FOREIGN KEY
评分DECIMAL(3, 1)NOT NULL,CHECK(评分 >= 1.0 AND 评分 <= 10.0)
评论内容VARCHAR255NOT NULL
评论时间DATETIMEDEFAULT CURRENT_TIMESTAMP
购物车表
字段名称类型长度约束类型
购物车IDINT12PRIMARY KEY
用户IDINT12NOT NULL,FOREIGN KEY
总价INT12NOT NULL
购物车项表
字段名称类型长度约束类型
购物车项IDINT12PRIMARY KEY
购物车IDINT12NOT NULL,FOREIGN KEY
商品IDINT12NOT NULL,FOREIGN KEY
数量INT12NOT NULL

未完待续。。。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

RuoYi-Vue-Plus(基础知识点jackson、mybatisplus、redis)

一、JacksonConfig 全局序列化反序列化配置 1.1yml中配置 #时区 spring.jackson.time-zoneGMT8 #日期格式 spring.jackson.date-formatyyyy-MM-dd HH:mm:ss #默认转json的属性&#xff0c;这里设置为非空才转json spring.jackson.default-property-inclusionnon_null #设置属性…

数据库级别的刷新和数据表级别的刷新结果不一样吗

这个刷新和这个刷新有啥区别 我发现点左边的刷新没有办法刷新出新注册成功的用户&#xff0c;但是下一张图片就能刷新出来 我也知不道是不是&#xff0c;还是我navicat有问题 是的&#xff0c;数据库级别的刷新和数据表级别的刷新的结果是不同的&#xff1a; 数据库级别的刷新…

JavaSE(简介)

1. Java语言特性 简单 Java语法是C语法的一个“纯净版本”&#xff0c;相当于对C做了一个减法。这里没有头文件、指针运算&#xff08;甚至指针 语法&#xff09;、结构、联合、操作符重载、虚基类等等。不仅如此&#xff0c;Java开发环境远远超出大多数其他编程语言的开 发环…

ttkbootstrap界面美化系列之按钮Button(三)

目录 一&#xff1a;Button接口 二&#xff1a;Button创建 三&#xff1a;Button主题 四&#xff1a;Button样式 五&#xff1a;Button状态 从本章开始将详细介绍ttkbootstrap中支持的常用组件&#xff0c;从按钮BUTTON开始&#xff0c;在各类界面设计中按钮几乎是必不可少…

解锁AI生成模型的无限可能:Stability-AI 带你领略前沿科技

厌倦了千篇一律的图片和视频&#xff1f;想要创作独一无二的艺术作品&#xff1f;Stability-AI 横空出世&#xff0c;为你打开通往 AI 生成模型的大门&#xff0c;带你领略前沿科技的无限可能&#xff01; 神奇的功能&#xff0c;尽在掌握 Stability-AI 拥有众多令人惊叹的功能…

第2讲-Memory(4)拓展

存储器芯片结构 存储器扩展 地址总线:这决定了处理器将从内存中读取数据或写入数据的内存位置。 数据总线:它包含已从内存位置读取或将写入内存位置的数据内容。 控制总线:它管理组件之间的信息流,指示操作是读取还是写入,并确保操作在正确的时间发生。

聊一下大模型的函数调用-Function call

你好&#xff0c;我是 shengjk1&#xff0c;多年大厂经验&#xff0c;努力构建 通俗易懂的、好玩的编程语言教程。 欢迎关注&#xff01;你会有如下收益&#xff1a; 了解大厂经验拥有和大厂相匹配的技术等 希望看什么&#xff0c;评论或者私信告诉我&#xff01; 文章目录 一…

Springboot 利用自定义注解+切面,实现 查询数据集合时主动加序列字段

利用自定义注解切面,实现 查询数据集合时主动加序列字段, 只需要在Dao接口&#xff0c;方法上引入注解即可 import java.lang.annotation.ElementType; import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; import java.lang.annotat…

数据结构 - 链表

一.链表的概念 链表是一个在物理存储单元中不连续&#xff0c;没有顺序的的存储结构&#xff0c;关于它的顺序是由链表中的指针链接实现的&#xff0c;是一种递归的数据结构&#xff0c;链表有一系列节点组成&#xff0c;而这些节点会在运行时动态生成。 节点包括两个部分&am…

【docker】查看并拷贝容器内文件

一、查询容器 查询所有容器 docker ps查询名为os11的容器 docker ps | grep os11查询名为os11的容器&#xff08;包含不运行的&#xff09; docker ps -a| grep os11 docker ps [option] 显示结果介绍如下&#xff1a; 参考&#xff1a;[https://blog.51cto.com/u_15009374/31…

工厂投产、电池装车,广汽能上动力电池行业的“餐桌”吗?

文 | 智能相对论 作者 | 沈浪 “如果你不在餐桌上&#xff0c;你就会出现在菜单上。”在某种程度上&#xff0c;追逐效益的动力电池行业正在上演着布林肯的“餐桌菜单论”。 于是&#xff0c;我们可以看到&#xff0c;尽管整体的动力电池市场被宁德时代、比亚迪、LG新能源、…

怿星科技Neptune CHT-S测试系统,让智能座舱测试更加高效便捷

随着汽车“智能化”浪潮的推进&#xff0c;汽车的智能化水平正在持续刷新行业认知。在这股智能化潮流中&#xff0c;智能座舱作为客户体验最为直观的部分&#xff0c;其重要性不言而喻。倘若座舱设备出现死机、黑屏、卡顿等现象&#xff0c;都将对客户的使用体验产生非常大的影…

领军量子时代!逾九成机构加盟「英伟达」生态系统

在2024年3月17日至21日举行的GTC大会上&#xff0c;芯片制造领军企业英伟达&#xff08;NVIDIA&#xff09;发布了一项革命性的云服务&#xff0c;专为推动量子计算研究而设计。这一新服务&#xff0c;名为英伟达量子云&#xff08;NVIDIA Quantum Cloud&#xff09;&#xff0…

外包干了15天,技术退步明显。。。。。

先说一下自己的情况&#xff0c;本科生&#xff0c;2019年我通过校招踏入了南京一家软件公司&#xff0c;开始了我的职业生涯。那时的我&#xff0c;满怀热血和憧憬&#xff0c;期待着在这个行业中闯出一片天地。然而&#xff0c;随着时间的推移&#xff0c;我发现自己逐渐陷入…

C# winform修改背景图 控件双向绑定 拖拽打开图片

修改背景图 说明 这里我准备基于百度飞桨PaddleSeg项目的人像分割模块做一个人像抠图&#xff0c;这里顺便用上了双向绑定和图片拖拽打开。 下面就是示例&#xff1a; 用颜色替换 用背景图替换 保存成功后的图片 一、使用百度飞桨PaddleSeg //初始化 引擎engine new Padd…

掌握未来技术:国产openEuler 操作系统学习网站指南!

介绍&#xff1a;openEuler是一个开源的操作系统平台&#xff0c;由华为技术有限公司发起并维护。 首先&#xff0c;openEuler支持多种处理器架构&#xff0c;包括但不限于AArch64&#xff08;鲲鹏&#xff09;和x86-64&#xff0c;这使得它可以在多种硬件平台上运行&#xff0…

滴水逆向PE结构

1.操作系统是只能打开可执行文件 以4D 5A开头MZ 其他的txt都是什么wrod 都是在exe程序中打开的 txt啥的不是可执行文件 PE结构是分节的 一节一节 节省硬盘空间 32位中任何一个exe都有4g的虚拟内存 占内存空间大 给磁盘空间小 在硬盘空间紧密 在内存空间大 &#xff08…

设计模式 --4:工厂方法模式

总结 &#xff1a; 个人理解&#xff1a; 工厂方法模式就是在简单工程模式的基础下将工厂类抽象出来。如果不抽象工厂类 &#xff0c;每一次创建一个新的算法&#xff0c;都要修改原来的工厂类&#xff0c;这不符合 开放–封闭原则 将工厂类给抽象出来&#xff0c;让具体的算法…

appium自动化框架综合实践

结合前面的元素寻找、操作、unittest测试框架&#xff0c;搭建一个完整的自动化框架。本篇旨在框架设计、单机用例执行、输出报告&#xff0c;下篇继续实践Bat批处理执行测试、多设备并发测试。 框架功能 数据配置日志输出截图处理基础功能封装&#xff08;公共方法&#xff…

Java学习笔记NO.24

T1.完成理工超市系统的商品类及其子类的定义&#xff0c;实现“浏览商品”及“查看商品详情”功能 &#xff08;1&#xff09;商品类 public class Goods {public String name;public double price;public int count;public String desc;public Goods(String name, double p…