【资料库系统】L2 关联式模型

L2 关联式模型

2-1 关联式模型结构

  • 表(tables):一个关联式资料库包含了的集合
  • 关联(relation):为一个表
  • 元组(tuple):表的一个列
  • 属性(attribute):表的一个行
  • 领域(domain):每个关联的属性值 ex:上表中的salary属性领域
  • 单元性(atomic):一个领域中的元素被认为不可分割的单位
  • Null:表示空值或不存在

2-2 资料库架构

  • 资料库架构:资料库的逻辑设计
  • 资料库实例:某时间点上资料库的资料

2-3 键

  • 超键(surperkey):一到多个属性组成的集合,用於确定一个元组的唯一性
  • 候选键(candidate keys):没有适当子集的最小超键
  • 主键(primary key):表示整个关联的性质
  • 外来键(foreign kty)

2-4 架构图

  • 架构图(schema diagrams):表示资料库主键与外键的相依性

      灰色处表示关联名称,白色为属性
      外来键拉出键头,指向黑色底线的主键
    

2-5 关联式资料库的查询语言

  • 查询语言(query language):使用者用从於操作资料库的语言,使用资料库系统程序执行的为程序语言(procedural language),给予使用者资讯而不给予具体程序的为非程序语言(nonprocedural language)

2-6 关联式运算

  • 一种程序语言,利用一组操作与一两种语言结合,产生新关联

  • select: σ

      满足给定谓词的元组
    
    • EX:选择"教授"在"物理"部门中的元组
    • 可以通过"∧(and), ∨(or), ¬(not)"连接谓词
    • EX:编写薪水90,000美元的物理教师:
    σ(dept_name)=“Physics”∧salary >90,000(instructor)
    
    • 可以做出两个属性的比较,EX:找出名称与其构建名称相同的所有部门
    σ(dept_name)=building(department)2.13
    
  • project: ∏

      滤掉某些参数,只留下指定的参属性
    
    • A1,A2为属性名称,r为参数

    • 结果会删除重复行

    • EX:消除教师的dept_nameattribute

    • EX:从物理部门中的所有教师的名称

  • union: ∪

    • 结合两个关联
    • Notation: r ∪ s
    • 忽略相同的属性
    • 属性必须兼容
    • EX:查找2017年秋季学期或在2018年春季学期或两者春季的所有课程
  • set difference: –

    • 一个不在另一个关系的关系元组
    • Notation:r – s
    • r与s间的属性要相同
    • r与s的值要有差异
    • EX:找到2017年学期秋季教授,但不是在2018年春季学期的所有课程
  • Set Intersection:∩

    • Notation: r ∩ s
    • 忽略相同的属性
    • EX:查2017年秋季和2018年春季学期教授的所有课程联集
  • Cartesian product: x

    • 笛卡尔积:将任意两个关联做结合
    • EX:instructor X teaches
  • Natural Join:⋈

    • 可以组合select和Cartesian-Product的操作
    • ?(⋈?)?=(??)(?×?)


<<:  CMoney第八届菁英软件工程师战斗营_Week 2

>>:  Day3:String Formatting 字串格式化

21. 闲聊 x 网页浏览快捷键(Windows/Linux)

ㄟ,拍谢,这篇又变成 windows 了。 我平常还是用 windows 系统,因为 windows...

Day 5. Compare × G1

The World of G1 G1 的编辑器在网路还没进入到前端 framework 御三家(A...

鼠年全马铁人挑战 WEEK 34:负载性能测试 - Gatling (上)

           Photo on gatling.io 前言 前几周小弟介绍了一款负载性能的...

【左京淳的Spring学习笔记】基础案例

使用首页、输入画面、输出画面等三个基础画面,来熟悉画面之间跳转及资料移动的原理。 本练习不涉及业务...

Python 演算法 Day 10 - Feature Selection

Chap.II Machine Learning 机器学习 https://yourfreetemp...