1.1SQL语言

SQL语言分为两类:

  1. 数据定义语言:DDL(data definition language):最常用的CREATE ,ALTER,DROP等

  2. 数据操纵语言:DML(data manipulation langugage):SELECT,INSERT,DELETE,UPDATE

1.2关系数据库管理系统

几个专业术语:

  • 所有的信息以关系表示,我们也将关系视为二维表

  • 表或关系是数据库对象

  • 每一个关系由一个关系名以及属性的集合组成

  • 表中数据以元组的集合出现

  • 关系中属性总数称为关系的

  • 行的总数称为关系的基数

  • 域:特定列的值的集合

  • 主码(PK):用于确定元组或行的唯一性,构成主码的属性值不可以为空(NULL),这样的附加限制,称为完整性约束

  • 外码(FK):因为具有相同基础域的列可以用在数据库的关系表中,外键(FK)维持了两个关系的行间或同一关系的行间一致性。可以定义如下:

假设在同一数据库中有关系r1和r2,如果同时满足以下两个条件,则r1的FK属性组可称为r1的外码。
  1. FK中的属性与关系r2中定义为r2的PK属性组具有相同的基础域,

  2. FK的值或为NULL,或为关系r2中一个元组的PK值,两者必居其一。

外码保证了:关系r1的元组若引用关系r2的元组,关系r2的元组必须已经存在,这种对外码的约束称为参照完整性约束

  • 包含外码的表称为子表,包含参考属性的表叫父表


1.5关系运算符

关系运算符:对表进行操纵的运算符,具有封闭性(即,根据关系操作产生新的关系)。


常见的关系操作符:选择,投影及等值连接



1.5.1选择运算符


定义:假设r是一个关系,A是r的一个属性,a是Domain(A)的一个元素,在属性A上的选择,即产生r的t元组子集且t(A)=a. 


注意:选择运算符是一个单目运算符,一次只能对一个关系进行运算。



1.5.2投影运算符

投影运算符也是单目运算符

选择运算符选择关系中行的子集

投影运算符选择列的子集。

定义:关系对属性组X的投影运算,产生一个新的关系,首先排除关系r中未在X中指定的列,然后排除任意重复元组来获取。

15.3等值连接运算符


等值连接运算符是二目运算符,将两个关系组合到一起。


定义:关系r含有属性组R,关系s含有属性组S,并且R和S有一些共同属性(不能根据名称相同,要根据属性域相同来确定共同属性)。设R和S的共同属性组为X,r与s的连接产生新的关系,其属性为RUS(R和S的或)的元素,此外,新关系中的每一元组t,要满足:

把元组t拆分为两个元组,可以分别在R和S中找到对应的元组。




1.6属性域


在RDMS中,任一给定的属性域用一个数据类型来实现。