数据库系统概念 Relational Model

这篇博客深入探讨了关系数据库的结构,包括表的集合构成、属性与列的关系、数据库模式和实例的定义。还讨论了键的概念,如超键、候选键和主键,并介绍了外键在关系模式中的作用。此外,文章提到了关系查询语言和操作,通过示例展示了如何使用这些操作进行数据查询。
摘要由CSDN通过智能技术生成

Structure of Relational Databases

  • 关系数据库由表 (table) 的集合构成,每个表有唯一的名字
  • 表中的一行戴奥了一组值之间的一种联系 (relationship)
  • 表是这种联系的一个集合
  • Venn图如下

在这里插入图片描述
可以看到,table和relation两个概念密切相关。

  • r e l a t i o n    ⟹    t a b l e relation\implies{table} relationtable
  • a t t r i b u t e    ⟹    c o l u m n attribute\implies{column} attributecolumn
  • 关系实例 (relation instance):一个关系的特定实例,即即一组特定的行;
  • 对于关系的每个属性,都存在一个允许取值的集合,成为该属性的域 (domain)
  • 关系的所有属性的域都具有原子性 (atomic 不可再分)

Database Schema

  • Database Schema 数据库模式:数据库的逻辑设计 可类比变量定义
  • Databse Instance 数据库实例:给定时刻数据库中状态 类比某一时刻变量的值

Keys

用于区分给定关系中不同元组的方法。

  • Superkey 超码:能够在一个关系中唯一地标识一个元组的,一个或多个属性的集合。
  • Candidate key 候选码:如果一个超码地任意真子集都不能成为超码,这样最小的超码称为候选码。
  • Primary key 主码:被数据库设计者选中的、主要用来在一个关系中区分不同元组的候选码。
  • Venn图如下

在这里插入图片描述
需要注意,码是整个关系的一种性质,而不是单个元组的性质。

  • 一个关系模式(r1)可能在它的属性中包括另一个关系模式和(r2)的主码,这个属性在r1上称作参照r2的外码 (foreign key)
    r1称为外码的参照关系(referencing relation)
    r2称为外码的被参照关系(referenced relation)

Schema Diagrams

一个含有主码和外码依赖的数据库模式可以用模式图(schema diagram)表示。

在这里插入图片描述

Relational Query Languages

查询语言(query language) 是用户用来从数据库中请求获取信息的语言。
过程化与非过程化。

Relational Operations

Symbol (Name) Usage Example
σ \sigma σ (Selection) 返回输入关系中满足谓词的元组 σ a g e > = 18 ( s t u d e n t ) \sigma_{age>=18}(student) σage>=18(student)
Π \Pi Π (Projection) 对输入关系的所有行输出指定的属性。从输出中去除重复元组 Π I D , s a l a r y ( i n s t r u c t o r ) \Pi_{ID,salary}(instructor) ΠID,salary(instructor)
⋈ ⋈ (Natural join) 从两个输入关系中输出这样的元组对:他们在具有相同名字的所有属性上取值相同 i n s t r u c t o r ⋈ d e p a r t m e n t instructor⋈department instructor⋈<
  • 1
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值