数据库导论01

数据库概要

课程
关注如何实际构建和设计。

1. 含义

它是以某种⽅式去进⾏关联的数据集合

A database is an organized collection of inter-related data that models some aspect of the real-world (e.g.modeling the students in a class or a digital music store).

2. CSV文件

csv, 全称“Comma-Separated Values”,是一种逗号分隔值格式的文件,是一种用来存储数据的纯文本格式文件。纯文本意味着该文件是一个字符序列,不含必须像二进制数字那样被解读的数据。CSV文件由任意数目的记录组成,记录间以某种换行符分隔;每条记录由字段组成,字段间的分隔符是其它字符或字符串。
参考链接-CSV

3. 数据库管理系统

数据库管理系统
通用的数据库管理系统相比普通的功能更强大。

数据库管理软件

是⼀种专业软件,它允许程序在⽆须关⼼底层实现的情况下,对数据库中的信息进⾏存储和分析,是⼀种能够被多种应⽤所复⽤的软件。

4. 关系模型三要素
  1. 将关系转化为简单的数据结构然后存⼊数据库
  2. 通过高级语言访问数据
  3. ⼤型数据库的物理存储策略取决于数据库管理系统的实现

关系模型属于数据模型的一个例子,数据模型是用于描述数据库中的数据的概念的集合,型本质上是我们如何组织数据的⼀种⾼级概念。

元组

元组(tuple)是关系数据库中的基本概念,关系是一张表,表中的每行(即数据库中的每条记录)就是一个元组,每列就是一个属性。 在二维表里,元组也称为行。
不能添加、删除和修改元素,也就是说元组在程序运行过程中不能被修改。
元组的注意事项

5. 关系模型的三部分内容
  1. 关系结构:关系的定义及其内容。
  2. 数据完整性约束:确保数据库的内容满足约束条件,比如年份的值都必须是数字。
  3. 操作:如何访问和修改数据库的内容。
6. 主键和外键
  1. 主键:某⼀个唯⼀属性或⼀个属性组能唯⼀标识⼀条记录,该属性或属性组就可以称为主键。如果没有定义一个内部主键,那么一些DBMS会自动创建一个内部主键。许多DBMS都支持自动生成主键,因此应用程序不必手动增加。
  2. 外键:外键指定一个关系中的属性必须映射到另一个关系中的元组。
7. DML(Data Manipulation Languages)

DML是⼀种操作数据的⽅式,通过它,你可以⽤来访问或修改数据库来⽣成你想要的结果。
包括程序化和非程序化两种语言。
程序化:该查询指定了DBMS应该用于查找所需结果的(高级)策略。比如下文提到的关系代数。
非程序化:查询只指定需要哪些数据,而不指定如何查找它。

8. 关系代数

关系代数是检索和操作关系中的元组的一组基本操作。每个操作符接受一个或多个关系作为输入,并输出一个新的关系。为了编写查询,我们可以将这些操作符“链式”在一起,以创建更复杂的操作。
7种操作符:
在这里插入图片描述

  1. select
    根据⼀些查询条件来得到符合条件的tuples的⼀个⼦集.类似过滤器
  2. projection
    接受一个关系,并输出一个与只包含指定属性的元组的关系。可以重新排列输入关系中的属性的顺序,以及操作这些值。相比select多了可操作属性值这一功能。
  3. union
    并集。将两个关系组合⽣成⼀个新的关系,这其中包含了这两个关系中的全部tuple。当你想对两个关系进⾏Union操作时,这两个关系必须具有相同属性以及 相同类型才⾏。
  4. intersection
    交集。接受两个关系并输出一个包含出现两个输入关系的所有元组的关系。注意:这两个输入关系必须具有完全相同的属性。
  5. difference
    差分包含两个关系并输出一个关系,其中包含出现在第一个关系中的所有元组。注意:这两个输入关系必须具有完全相同的属性。
  6. product
    乘积包含两个关系,并输出一个关系,其中包含来自输入关系的所有可能组合的元组。
  7. jion
    自然连接。与difference有点相同,但join可以有一些额外属性,他们不需要一样。但在DIfference操作符中,我们必须有完全相同的属性以及类型。

更好的方法是说出您想要的结果,并让DBMS决定它为计算查询所要采取的步骤。SQL将完全做到这一点,而且它是在关系模型数据库上编写查询的实际标准。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值