• 软考 --- 数据库(2)关系模型


    1.1 关系模型

    1.1.1 定义 

            在用户观点下,关系模型中数据的逻辑结构是一张二维表,它由行和列组成;

            用表格结构表达实体集,用外键(外码)表示实体简联系;

    1.1.2 优缺点

            优点:

            建立在严格的数学概念基础上;

            概念单一,结构简单、清晰、用户易懂易用;

            存取路径对用户透明,从而数据独立性、安全性好,简化数据库开发工作;

            

            缺点:

            由于存取路径透明,查询效率往往不如非关系数据模型;

    1.2 基本概念

    1.2.1 域

            是一组具有相同数据类型的值的集合;

    1.2.2 笛卡尔积

            两个集合X和Y的笛卡尓积,又称直积,表示为 X * Y ,第一个对象是 X 的成员而第二个对象是 Y 的所有可能有序对的其中一个成员。

            例:X = { a ,b ,c },Y = { 1 , 2 , 3 }

            X * Y = {

                          < a ,1 >,< a ,2 >,< a ,3 >,

                          < b ,1 >,< b ,2 >,< b ,3 >,

                          < c ,1 >,< c ,2 >,< c ,3 >, 

                         }

     1.2.3 关系的表示

            表示:

            D1 * D2 * …… * Dn 的子集叫做在域 D1,D2,……,Dn 上的关系,表示为

                    R( D1,D2,……,Dn ) 

            R:关系名;

            n:关系的目或度;

            

            关系也是一个二维表,表的每行对应一个元组,表的每列对应一个域;

            

            属性:

            关系中不同列可以对应相同的域

            为了加以区别,必须对每列起一个名字,称为属性;

            n 目关系必有 n 个属性;

            

            候选码:

            若关系中的某一属性组的值能唯一地标识一个元组,则称该属性组为候选码;

            

            主码:

            若一个关系有多个候选码,则选定其中一个为主码; 

     1.2.4 基本关系的性质

            基本关系具有以下 6 条性质:

            1. 列是同质的,即每一列中的分量是同一类型的数据,来自同一个域;

            2. 不同的列可出自同一个域,称其中的每一列为一个属性,不同的属性要给予不同的属性名;

            3. 列的顺序无所谓,即列的次序可以任意交换;

            4. 任意两个元组不能完全相同;( 但是多数实际关系数据库产品中,例如 Oracle ,如果用户没有定义有关约束条件,它们都允许关系表中存在两个完全相同的元组 ) 

            5. 行的顺序无所谓,即行的次序可以任意交换;

            6.分量必须取原子值,即每一个分量都必须是不可分的数据项;

     1.3 范式

    1.3.1 第一范式

            如果关系模式 R 的每个关系 r 都是不可分的原子值,那么称 R 是第一范式的模式,r 是规范化的关系;

            在任何一个关系数据库中,第一范式是对关系模型的基本要求,不满足第一范式( 1NF )的数据库就不是关系数据库;

     1.3.2 第二范式

            若关系模式 R 是 1NF,且每个非主属性完全函数依赖于候选键,那么称 R 是 2NF 模式;

    1.3.3 第三范式

            如果关系模式 R 是 1NF ,且每个非主属性都不传递依赖于 R 的候选码,则称 R 是 3NF ; 

    1.3.4 BC 范式 

            若关系模式 R 是 1NF ,且每个属性都不传递以来于 R 的候选键,那么称 R 是 BCNF 模式;

  • 相关阅读:
    “批量随机字母命名文件,轻松管理你的文件库“
    whistle 的使用
    【CV】第 6 章:图像分类的实际方面
    java计算机毕业设计昆明市人民医院血库管理系统源代码+数据库+系统+lw文档
    搭建网络yum仓库
    075:vue+openlayers: Drag-and-Drop拖拽文件解析显示图形(代码示例)
    聊一聊Rust的enum
    深度学习(PyTorch)——线性模型
    【机器学习】包裹式特征选择之基于遗传算法的特征选择
    ArcObjects SDK开发 007 自定义App-Command-Tool框架
  • 原文地址:https://blog.csdn.net/jc15274630894/article/details/126017742