数据库原理之建表三大范式

第一范式:保持列的原子性。

即、列不能再被细分,例如:地址,

当地址不能不被分成城市、国家等的时候,具备原子性;

如果能被分为城市、国家等级别时,不具备原子性。

第二范式:主键和其他列具备联系。(第二范式是第一范式子集)

例如:产品表(编号,订单号,名称,材料编号,材料名称)。

从简单理解他们都是不可再分的列,具备原子性,但如果订单号和产品表示没有联系的,那么就应该从中删除。

第三范式:主键和其他列有直接的联系。(第三范式是第二范式子集)

例如:产品表(编号,名称,材料编号,材料名称)。

那么材料名称是没有直接联系的。

时间: 2024-08-29 05:33:19

数据库原理之建表三大范式的相关文章

数据库关联映射建表图示(一对多、多对多)

~总结一下数据库的 一对多.多对一.一对一.多对多 关系 以及对应的建表方式~ 关联映射:一对多/多对一 存在最普遍的映射关系,简单来讲就如球员与球队的关系: 一对多:从球队角度来说一个球队拥有多个球员 即为一对多 多对一:从球员角度来说多个球员属于一个球队 即为多对一 数据表间一对多关系如下图: 关联映射:一对一 一对一关系就如球队与球队所在地址之间的关系,一支球队仅有一个地址,而一个地址区也仅有一支球队. 数据表间一对一关系的表现有两种,一种是外键关联,一种是主键关联.图示如下: 一对一外键

Unity3D 连接MySQL数据库笔记3-SQL建表

打开  Navicat MySQL管理工具 连接到数据库 选择 test 数据库 点击 查询 输入对应的 sql命令 create table tuser( uname varchar(20) not null primary key, upwd varchar(20) not null ); create table p_info( pkey varchar(15) not null primary key, pname varchar(20) not null, psex varchar(2

SQLServer数据库基础--E-R图、三大范式、数据库设计步骤

本书目标: 了解数据库的基本概念和范式 熟练使用SMSS.T-SQL实现建库.建表.加约束 掌握T-SQL编程,实现功能强大的查询 掌握创建索引.视图,快速访问数据库 熟悉掌握创建存储过程,实现复杂的业务规则 理解触发器的原理,掌握高级的约束 了解SQLServler安全管理 了解数据库的备份与恢复 本章目标: 了解数据库的基本概念 了解数据库设计的步骤 掌握绘制数据库E-R图 理解数据库三大范式 什么是数据库系统? 数据库系统(DBS)是一个以数据库为核心的完整的运行实体, 数据库的组成: 系

数据库(关系型)设计三大范式

为了建立数据冗余小,没有数据异常(更新.删除.插入)的数据库.设计数据库时必须遵循一定的规则.在关系型数据库中这种规则就称为范式.范式是符合某一种设计要求的总结.要想设计一个结构合理的关系型数据库,必须满足一定的范式. 设计数据库的时候遵循下面三个范式基本就能满足业务需要. 第一范式(1NF):数据库表中的所有字段都是单一属性,不可再分. 解释:第一范式要求数据库中的表都是二维表.一般情况下,关系型数据库是只能设计出二维表的. 例如,下面这张就是违反第一范式的表.因为它的“用户信息”字段可以再拆

数据库语句之建表、拷贝数据表

1.数据库建表语句 create table tb_People(id integer primary key, Name varchar(255), Sex varchar(255)) 2.同数据库拷贝数据表 sql: insert into table1 select*from table2(完全拷贝) insert into table1 select distinct*from table2(不重复拷贝); insert into table1 select top 10*from ta

基于ORACLE数据库的循环建表及循环创建存储过程的SQL语句实现

一.概述 在实际的软件开发项目中,我们经常会遇到需要创建多个相同类型的数据库表或存储过程的时候.例如,如果按照身份证号码的尾号来分表,那么就需要创建10个用户信息表,尾号相同的用户信息放在同一个表中. 对于类型相同的多个表,我们可以逐个建立,也可以采用循环的方法来建立.与之相对应的,可以用一个存储过程实现对所有表的操作,也可以循环建立存储过程,每个存储过程实现对某个特定表的操作. 本文中,我们建立10个员工信息表,每个表中包含员工工号(8位)和年龄字段,以工号的最后一位来分表.同时,我们建立存储

数据库基础知识:数据库中的约束和三大范式

一.数据库中的范式: 范式, 英文名称是 Normal Form,它是英国人 E.F.Codd(关系数据库的老祖宗)在上个世纪70年代提出关系数据库模型后总结出来的,范式是关系数据库理论的基础,也是我们在设计数据库结构过程中所要遵循的规则和指导方法,以下就是对这三个范式的基本介绍: 第一范式(1NF): 数据表中的每一列(字段),必须是不可拆分的最小单元,也就是确保每一列的原子性. 例如: userInfo: '山东省烟台市 1318162008' 依照第一范式必须拆分成            

数据库原理-数据多表查询

连接查询 数据库中涉及两个表之间的数据查询通常使用连接的方法实现.连接分为内连接和外连接. 内连接:指连接结果仅包含符合连接条件的行,参与连接的两个表都应该符合连接条件. 外连接:连接结果不仅包含符合连接条件的行同时也包含自身不符合条件的行.包括左外连接.右外连接和全外连接. 左外连接:左边表数据行全部保留,右边表保留符合连接条件的行 右外连接:右边表数据行全部保留,左边表保留符合连接条件的行 全外连接:左外连接 union 右外连接 内连接,即最常见的等值连接,例: SELECT * FROM

数据库设计---关于建表的时候选择横标和竖表(纵表)的一点思考

本文出处:http://www.cnblogs.com/wy123/p/6677073.html 在做数据统计类数据库设计的时候,在考虑数据存储的时候,经常会遇到逻辑上同一个BusinessID对应多个数据点的情况,比如工资表中的员工ID以及各项工资信息,财务表中的各个报表Id和多个数据点之间的信息面对这种情况,如何来设计表结构,是横表,还是竖表,各有那些优缺点,本文将做一个粗浅的分析. 横标和竖表的表现形式 日常生活中也有很多类似的例子,先用一个Excel画一个例子,比如工资表这么做就是“横表