数据库理论概览:关系模型与关系代数

0 下载量 174 浏览量 更新于2024-08-04 收藏 48KB DOCX 举报
"数据库课件总结:此文档是关于数据库课程的第二章大纲,主要涵盖了数据库的基本概念、关系模型以及关系代数的操作。 在数据库中,每个属性允许的值的集合被称为该属性的域。例如,如果`customer`是关系模式,那么`Customer_schema`可能包含了客户的相关属性,如`CustomerID`, `Name`, `Address`等,这些属性的域分别对应着有效的ID号码、姓名字符串和地址字符串等。 关键概念包括超键、候选键和主键。超键(Superkey)是指能够唯一标识关系中每一元组的一组属性。如果一组属性的值可以唯一确定一个元组,那么这组属性就是这个关系的超键。候选键(Candidate Key)是最小的超键,即没有任何多余的属性。如果一个候选键被数据库设计者选中用于在同一个关系中区分不同的元组,那么它就被称为主键(Primary Key)。 关系代数是一种过程化的查询语言,包含六个基本操作: 1. 选择(Select):根据指定的条件从关系中选取满足条件的元组。 2. 投影(Project):从关系中选取特定的属性列,生成新的关系。 3. 并集(Union):合并两个关系中的不重复元组。 4. 差集(Set Difference):从一个关系中移除另一个关系中的所有元组。 5. 笛卡尔积(Cartesian Product):将两个关系的元组进行两两配对生成新关系。 6. 重命名(Rename):为关系或其属性赋予新的名称。 选择操作的表示形式为`p(r)`,其中`p`是选择谓词,是一个由逻辑运算符(如`and`, `or`, `not`)连接的命题公式,每个术语可以是属性与常量或属性间的比较运算。例如,`CustomerID > 1000`就是一个选择谓词。 投影操作用`π`表示,例如`π A1, A2 (r)`表示从关系`r`中选取属性`A1`和`A2`生成新的关系。 并集操作用`∪`表示,如`r ∪ s`,但为了有效,两个关系必须具有相同的属性个数(同质性)。差集操作用`-`表示,`r - s`表示从`r`中去除与`s`中匹配的所有元组。 这些基本操作是构建更复杂查询的基础,它们可以组合使用以完成各种数据检索任务。了解和熟练掌握这些概念和操作对于理解和设计数据库查询至关重要。"