前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >oracle基础|数据库如何设计|数据库的六种范式|数据库的主键和外键|数据库的约束

oracle基础|数据库如何设计|数据库的六种范式|数据库的主键和外键|数据库的约束

作者头像
小小鱼儿小小林
发布2021-12-28 10:29:06
6910
发布2021-12-28 10:29:06
举报
文章被收录于专栏:灵儿的笔记

目录

一、数据库设计

二、数据库六种范式

第一范式:

第二范式:

第三范式:

三、主键和外键

主键:

外键:

四、完整性约束

五、建表

六、oracle数据库中的多种数据结构


一、数据库设计

数据建模完成之后,可以把ER图转换成数据中的表

1.实体的名字转换为表的名字

2.实体的属性转换为表中的列

3.具有唯一特点的属性设置为表中的主键

4.根据实体之间的关系设置为表中某列为外键列(主外键关联)

二、数据库六种范式

设计关系数据库时,遵从不同的规范要求,才能设计出合理的关系型数据库,这些不同的规范要求被称为不同的范式,各种范式呈递次规范,越高的范式数据库冗余越小。

目前关系数据库有六种范式:

第一范式(1NF)

第二范式(2NF)

第三范式(3NF)

巴斯-科德范式(BCNF)

第四范式(4NF)

第五范式(5NF,又称完美范式)

注:满足最低要求的范式是第一范式(1NF)。在第一范式的基础上进一步满足更多规范要求的称为第二范式(2NF),其余范式以次类推。一般说来,数据库只需满足第三范式(3NF)就行了

第一范式:

一个表中,每个列里面的值是不能再分割的.

例如:我们设计的表中有一个列是:爱好,这个列的值可能会是这样:足球篮球乒乓球,但是这值是可以再分割的:足球、篮球、乒乓球,所以这种设计是不满足第一范式

第二范式:

第二范式是在满足第一范式的基础上

表中的非主键列都必须依赖于主键列

例如:订单表: 订单编号 是主键,订单编号 订单名称 订单日期 订单中产品的生产地,这几个非主键列中,产品生产地是不依赖于订单编号的,所以这种设计是不满足第二范式

第三范式:

第三范式是在满足第二范式的基础上

表中的非主键列都必须直接依赖于主键列,而不能间接的依赖 (不能产生依赖传递)

例如:

订单表: 订单编号 是主键

订单编号 订单名称 顾客编号 顾客姓名

顾客编号依赖于订单编号,顾客姓名依赖于顾客编号,从而顾客姓名间接的依赖于订单编号,那么这里产生了依赖传递,所以这个设计是不满足第三范式的

三、主键和外键

主键:

1.能做主键的列必要满足非空唯一的特点

2.只要满足非空唯一的列都可以做主键

3.可以让表中一个有意义的列做主键,比如说学号,它既表示学生学号又作为表中的主键,因为这个列满足非空唯一的条件

4.也可以找一个没有意义的列做主键,就是用来唯一标识一行记录的

5.我们可以让多个列联合在一起做表中的主键,那么它就是联合主键,要求这几个列的值联合在一起是非空唯一的

外键:

1.表中的某一个列声明为外键列,一般这个外键列的值都会引用于另外一张表的主键列的值(有唯一约束的列就可以,不一定非要引用主键列)

2.另外一张表的主键列中出现过的值都可以在外键列中使用

3.外键列值也可以为空的,提前是这个外键列在表中不做主键,因为我们也可以把表中的外键列当做主键来使用(只有满足非空唯一的要求就可以)

4.如果把B表中的联合主键的值引用到A表中做外键,因为是俩个列在B表中做联合主键,那么A表引用过来的时候也要把俩个列的值都引用过来,那么它们在A表中就会作为一个联合外键出现

四、完整性约束

实体完整性:

引用完整性

列级完整性

用户自定义

五、建表

1.映射实体----表

2.映射属性----列

3.添加约束

4.描述关系信息(外键)

六、oracle数据库中的多种数据结构

1.表结构 存储数据

2.视图 一张表或多张表中数据的字节

3.sequence 主要用来生成主键值

4.index 提高检索性能

我们需要学会创建数据结构

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2021/12/26 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、数据库设计
  • 二、数据库六种范式
    • 第一范式:
      • 第二范式:
        • 第三范式:
        • 三、主键和外键
          • 主键:
            • 外键:
            • 四、完整性约束
            • 五、建表
            • 六、oracle数据库中的多种数据结构
            相关产品与服务
            数据库
            云数据库为企业提供了完善的关系型数据库、非关系型数据库、分析型数据库和数据库生态工具。您可以通过产品选择和组合搭建,轻松实现高可靠、高可用性、高性能等数据库需求。云数据库服务也可大幅减少您的运维工作量,更专注于业务发展,让企业一站式享受数据上云及分布式架构的技术红利!
            领券
            问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档