
1、若是一对多或多对一的对象存到数据库表,原则上应该先观察对象的基本属性,然后设计一个数据表保存此对象的基本数据,并在数量关系多的一方,加外键描述数据之间的关系;
2、若是多对多对象的数据库表,原则上也是观察该对象的基本属性,然后设计一个表来保存此对象的基本数据,且需要加一个中间表来描述数据的关系;
3、若是一对一的对象的数据库设计, 除了上述 *** 作,还因为一对一的对象有主从关系,因此可加入自连接表进行设计。
商品表
库存表
销售汇总表 ( 日期、时间、收银机、流水号、总金额)
销售明细表 ( 收银机、流水号、商品编号、商品数量)
付款方式表 ( 收银机、流水号、付款方式[现金、卡]、付款金额 )
基本的建立主键,索引什么的,我就不说了,
表设计可以采取拆分表的方式
纵向拆分表:根据字段拆分为多个表,每个表都有关联字段,可以将他们关联起来
(例如:订单表,几个根据字段拆分的表中都有1个订单号字段)
横向拆分表:不知道你具体什么数据,假定其中有时间字段,根据时间来拆分
(例如:1年有12个月,1个月的数据放入一个表中)
在JAVA开发中数据库的学习也是我们需要了解的,截下来几篇文章都是关于数据库的设计和应用,那么java课程培训机构废话不多说开始学习吧!
数据库的设计
数据库设计是基础,数据库优化是建立在设计基础之上的。好的数据库一定拥有好的设计。
数据库设计的目标是为用户和各种应用系统提供一个信息基础设施和高效的运行环境。
数据库的三大范式
第一范式1NF:所有的域都应该是原子性的,即数据库表的每一列都是不可分割的原子数据项,而不能是集合,数组,记录等非原子数据项。
第二范式2Nf:第二范式在第一范式的基础之上更进一层。第二范式需要确保数据库表中的每一列都和主键相关,而不能只与主键的某一部分相关(主要针对联合主键而言)。也就是说在一个数据库表中,一个表中只能保存一种数据,不可以把多种数据保存在同一张数据库表中。
第三范式3Nf:所有字段必须与主键直接相关,而不是间接相关。也可以理解为字段不要和其他非主键字段相关
注意:这三个范式尽可能去遵守,不是一定要墨守成规这只是让我们设计的表的时候,越靠近这些范式,可以使字段尽量的减小冗余但是有时候也可以根据实际需要小小的违背一下但是第三范式违反一下还可以接受,但是第一范式别违反
数据库设计的步骤
需求分析阶段
准确了解与分析用户需求(包括数据与处理)。是整个设计过程的基础,是最困难、最耗费时间的一步。
概念结构设计阶段
是整个数据库设计的关键--设计数据库的E-R模型图,确认需求信息的正确和完整
Entity_Relationship---实体之间的关系
一对一
一对多
多对一
数据库设计就是根据业务系统的具体需要,结合我们所选用的数据库管理系统,为这个业务系统构造出最优的数据存储模型。并建立好的数据库中的表结构及表与表之间的关联关系的过程。使之能有效的对应用系统中的数据进行存储,并可以高效的对已经存储的数据进行访问。数据库设计的步骤为需求分析,逻辑设计,物理设计,维护优化。
以上就是关于数据库表的设计全部的内容,包括:数据库表的设计、超市购物系统 设计sql数据库,需要哪些字段(对超市购物不了解)需要几个表,简单点的就好、数据量大,列比较多,请问数据库表该如何设计等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)