问题的提出:网上商城对产品进行了很多分类,不同的分类产品又有不同的属性,比如,电脑的属性有:CUP,内存,
主板,硬盘等等,服装的属性有:布料,尺寸,颜色等等,那么产品表以及产品分类表应该如何设计才能满足
不同类型产品的区别呢?
解决方案:
产品分类表的设计
第一种设计思路:使用树形结构,递归的形式,可以对产品进行N种 分类,只要你喜欢,树形结构在数据库的设计中
经常用到,比如功能菜 单表等以下是一个简单的产品分类表。
说明:上级类别ID为该表的外键,并关联到本级类别ID,这样就可以对产进行N中分类了,这种设计
思想十分灵活,是无限分类中最常用到的。
第二种设计思路:定义N个类别表,并对他们进行关联,如图:
说明:这种设计在项目中没有人会使用它,因为产品的分类是不固定的,很难在数据库设计的时候确定
类别 表的个数,很不灵活。
2、产品表的设计
第一种设计思路:直接在产品表预留N个字段,用到的时候直接插入数据,如图
可行性:会产生很多字段的冗余,并且不知道到底需要多少个字段,数据类型也不能确定,可行性比较低,但
是这种设计也有它的优点,就是表的数量少,其他的优点我实在找不出来了,所以,在项目中这种设
计思想也不会用到。
第二种设计思路: 在提及这种设计思路前,首先得了解数据表可以分为两种结构,一种是横表,也就是我们经常用到
的表结构,另外一种是纵表,这种结构平时我们用到的表少,所以我也是今天通过请教别人才知
有这种表结构的。
什么是纵表,它有哪些优点和缺点呢?通过两张图片对比来了解或许会更清楚
横表的结构:
纵表的结构:
可以看出横表的优点是很直观,它是根据现行业务逻辑定制,设计简单,易操作,缺点是当业务逻辑发生拓展
时,大多情况下要更改表的结构。纵表的数据让人看着感觉很乱,而且字段的数据出现很大的冗余,但是纵表的还
是有很多好处的,它比较灵活,当业务系统发生拓展时可以很好的适应, 知道了这些,那么我们可以进行产品表的
设计了,在这种设计思想中,需要三个表,一个为产品表,用来存产品的公共属性,另外一个是产品分类表,最后一
个表很关键,用来存不同类别产品的不同属性,采用的是纵表的结构,如图:
说明:通过产品拓展属性表,用户在页面就可以动态的某一类产品添加属性,添加好以后,就采用动态SQL提
取该类商品的属性生成相应的产品类别属性横表,用来保存产品的属性值,比如:用户在界面为电脑类ID为
COMP这一类产品中添加了CUP、内存EMS这两个属性,那么将会动态的提取这两个属性,生成横表T_COMP,
如图:
<!--EndFragment-->
具体怎么实现,有了设计思路,剩下的就是很死的东西了,或许这种设计不是最好的,但是也是我找了好久资料,也
向别人请教以后才弄明白这个流程的……
淘宝开发数据平台:http://my.open.taobao.com/apidoc/index.htm
- 大小: 38.4 KB
- 大小: 61.8 KB
- 大小: 54.9 KB
- 大小: 89.1 KB
- 大小: 2.9 KB
- 大小: 4.2 KB
- 大小: 17.1 KB
- 大小: 89.1 KB
分享到:
相关推荐
以下是一个详细的设计思路: 首先,我们需要建立四个核心表格来管理商品属性: 1. **属性类别表(spec)**: - `spec_id`:属性类别的唯一标识,作为主键。 - `spec_name`:属性类别的名称,如品牌、尺寸、颜色...
网上购物系统的后台数据库设计是构建电子商务平台的关键环节,它涵盖了用户管理、商品管理、订单处理、支付系统等多个核心模块。在此,我们将详细探讨这些模块的设计思路和相关知识点。 首先,**用户管理**是系统的...
标题中的“民族产品网站数据库设计”表明这是一个关于创建和设计用于展示民族产品的网站数据库的项目。这个项目可能涉及了如何有效地存储和管理与民族产品相关的各类信息,如产品类别、名称、描述、价格、产地、图片...
### 图书馆管理数据库设计知识点解析 #### 一、系统需求分析 - **引言**:当前许多小型图书馆的信息管理仍然依赖于手工处理,这种方式效率低下且容易出现错误。随着计算机技术的发展,利用计算机实现自动化的信息...
电子商城的数据库设计需要考虑性能优化,比如通过合理的数据类型选择、索引设计、范式化等手段来提高查询效率。此外,安全性也是重点,包括数据备份、恢复策略、权限控制以及防止SQL注入等安全措施。 描述中提到...
本文档旨在详细介绍一款财务管理系统中的数据库设计,包括但不限于实体与对象的命名规则、各个功能模块的表结构、视图以及潜在的存储过程与触发器的设计思路。通过本文档,读者可以深入理解财务软件在数据库层面的...
### 数据库设计案例分析 #### 一、案例背景与需求分析 某学校为了更好地管理学生信息及教学活动,决定开发一套学生教学管理系统。系统需要管理的主要实体包括学生、专业、学院、课程以及成绩等信息。具体的需求...
在本项目中,我们关注的是一个图书馆管理...20100928这个文件名可能是实验报告的提交日期,完整的报告应该包含上述所有内容,详细记录了设计思路、实现过程和结果分析,对于学习数据库设计和管理具有很高的参考价值。
### 自定义表单设计思路详解 #### 一、概述 自定义表单系统的设计目标是为了更好地与现有的工作流系统相结合,提升工作效率与灵活性。本文档将深入探讨自定义表单设计的关键点及其实施策略。 #### 二、基础功能...
自定义表单设计思路 本文主要讲述了自定义表单设计思路的总体规划,旨在满足和现有工作流系统的耦合,通过对自定义表单系统的设计来实现表单权限、记录权限、字段权限等功能。下面是自定义表单设计思路的详细内容:...
数据库课设,含报告,创建数据库代码都包含在报告中,有清晰的设计思路,包括流程图和E-R图,适用于数据库课程设计 实现工作人员、客户信息的管理; 实现矿泉水类别和供应商的管理; 实现矿泉水入库和出库管理。 ...
- **数据库设计**:在数据库设计阶段,应考虑试题分类、试题内容、答案、难度级别等要素,合理构建数据库表结构,如试题表、类别表、用户表等,确保数据的一致性和完整性。 2. **C#编程语言** - **C#基础**:C#是...
### 网上超市网站数据库设计 在设计一个网上超市网站时,数据库的设计至关重要,它直接关系到网站的性能、安全性和用户体验。本篇将基于提供的部分信息来详细阐述各个表的设计及其作用。 #### 1. 管理员表(`admin...
此外,“内含论文”提示我们该压缩包可能包含了一篇详细阐述设计思路和技术实现的学术论文,而“说明书”则可能提供了系统的操作指南和开发者注释,帮助用户理解和使用这个系统。 【标签】:“数据库” 数据库是这...
物流系统订单模块数据库设计...总的来说,这个物流系统订单模块数据库设计报告详细阐述了系统的设计思路、功能需求以及数据库结构,体现了物流系统信息化管理的现代化理念,旨在优化订单处理流程,提高服务质量和效率。
本文将详细解析"仓库管理系统数据库设计"这一主题,涵盖其关键要素和设计思路。 一、需求分析 在设计仓库管理系统数据库之前,首先要进行需求分析。了解系统需处理的业务流程,如入库登记、出库审批、库存盘点、...
内容概要:本文详细介绍了学生成绩查询系统的数据库设计和实现方法,涵盖需求分析、数据库设计、查询设计、功能实现以及系统安全性和数据备份等多个方面。具体来说,系统分为四个主要模块:需求分析明确了用户的类别...
数据库课设,含报告,创建数据库代码都包含在报告中,有清晰的设计思路,包括流程图和E-R图,适用于数据库课程设计本系统主要分为四个功能模块,基本信息模块,数据管理模块,水费收费管理模块,系统用户管理模块...
【量化数据库设计】是金融行业中用于优化投资策略和管理大量数据的一种重要方法。在量化投资领域,策略的好坏常常通过收益曲线的波动性来衡量,尤其是最大回撤和夏普比率。降低策略波动的关键之一是实施多品种、多...