数据库第二章ppt
合集下载
(第二讲)数据库(第二章:关系数据库的基本概念)

表2-5 学生表 XS_Sex XS_Age ZY_Id
类型 char(10) char(10) char(2) Int char(4) 学号,主码 姓名:字符类型
说明
性别:只能为男或女 年龄:整形 所在专业编号,外码,参照专业表
4. 选课表(XK_Tab):记录学生的选课结果,对于任意一门课,每 个学生一年最多只能选一次,因此用课程编号、学号和年份联合作为 选课表的主码。选课表通过学号参照学生表,通过课程编号参照课程 表。
2. 课程表(KC_Tab):存放多门课程,主码为课程编号。
表2-4 课程表(KC_Tab)
列名 KC_Id KC_Name KC_KC_Id KC_Point
类型 char(4) char(50) char(4) Float
说明 课程编号,主码 课程名称 先修课课程编号 课程的学分
3. 学生表(XS_Tab):记录学生的基本信息,主码为学号,通过专业 编号参照专业表。
2.3 关系模型规范化
关系模型规范化的目的是为了消除存储异常,减少数据冗余, 保证数据的完整性和存储效率。 关系数据库中的关系是要满足一定的规范化要求的。对于不 同规范化程度,可以使用“范式”来衡量。满足最低要求的为I范 式。。在I范式的基础上,进一步满足一些要求的为II范式,以次 类推。一般情况下,在实践中关系模式满足3范式就基本可以。
元素的每一个值 di 叫作一个分量。关系模型中要求每一 个分量必须属于某种基本数据类型,如整形或字符串型。
关系:笛卡尔积的子集就是一个关系。
R( D1 , D2 ,, Dn )
这里R表示关系的名字,n是关系的目或度。
例: 我们给出如下三个域: D1 =导师集合。导师={王新,赵阳} D2=专业集合。专业={计算机,通信} D3=学生集合。学生={(张三,101),(李四,201)} 则笛卡尔积为: D1XD2XD3={(王新,计算机,张三,101), (王新,计算机,李四,201),
类型 char(10) char(10) char(2) Int char(4) 学号,主码 姓名:字符类型
说明
性别:只能为男或女 年龄:整形 所在专业编号,外码,参照专业表
4. 选课表(XK_Tab):记录学生的选课结果,对于任意一门课,每 个学生一年最多只能选一次,因此用课程编号、学号和年份联合作为 选课表的主码。选课表通过学号参照学生表,通过课程编号参照课程 表。
2. 课程表(KC_Tab):存放多门课程,主码为课程编号。
表2-4 课程表(KC_Tab)
列名 KC_Id KC_Name KC_KC_Id KC_Point
类型 char(4) char(50) char(4) Float
说明 课程编号,主码 课程名称 先修课课程编号 课程的学分
3. 学生表(XS_Tab):记录学生的基本信息,主码为学号,通过专业 编号参照专业表。
2.3 关系模型规范化
关系模型规范化的目的是为了消除存储异常,减少数据冗余, 保证数据的完整性和存储效率。 关系数据库中的关系是要满足一定的规范化要求的。对于不 同规范化程度,可以使用“范式”来衡量。满足最低要求的为I范 式。。在I范式的基础上,进一步满足一些要求的为II范式,以次 类推。一般情况下,在实践中关系模式满足3范式就基本可以。
元素的每一个值 di 叫作一个分量。关系模型中要求每一 个分量必须属于某种基本数据类型,如整形或字符串型。
关系:笛卡尔积的子集就是一个关系。
R( D1 , D2 ,, Dn )
这里R表示关系的名字,n是关系的目或度。
例: 我们给出如下三个域: D1 =导师集合。导师={王新,赵阳} D2=专业集合。专业={计算机,通信} D3=学生集合。学生={(张三,101),(李四,201)} 则笛卡尔积为: D1XD2XD3={(王新,计算机,张三,101), (王新,计算机,李四,201),
第2章 数据库-关系模型1

• 在关系数据模型中一般将数据完整性分为三类
– 实体完整性
– 参照完整性 – 用户定义完整性
需要说明两点
• 关系是元组的集合,集合(关系)中的元素(元组) 是无序的;而元组不是分量di的集合,元组中的分量
是有序的。
例如,在关系中(a,b)≠(b,a),但在集合中{a,b}={b,a}。
• 若一个关系的元组个数是无限的,则该关系称为无限
实体完整性规则
• 实体完整性是要保证关系中的每个元组都是可识别和唯一的。 • 实体完整性规则要求关系中元组的主键值不可以为空值。
• 实体完整性是关系模型必须满足的完整性约束条件,也称作是
关系的不变性。 • 关系数据库管理系统用主键实现实体完整性,这是由关系系统 自动支持的。
对实体完整性规则的几点说明
关系数据语言
• 关系代数语言:如ISBL
• 关系演算语言:
– 元组关系演算语言(如Aplha,Quel)
– 域关系演算语言(如QBE)
• 具有关系代数和关系演算双重特点的语言:如SQL
返回
关系完整性约束
• 在数据库中数据完整性是指保证数据正确的特性。
它包括两方面的内容:
– 与现实世界中应用需求的数据的相容性和正确性; – 数据库内数据之间的相容性和正确性。
部门表(R1)
部门编号 01 02 03 04 部门名称 经理办公室 人事部 公关部 技术部 …
02 03
外部关系键
主关系键
注意事项:
• 外部关键字和相应的主关键字可以不同名,只要 定义在相同值域即可。 • 两个关系(R和S)也可以是同一个关系模式,表 示了属性之间的联系。 • 外部关键字的值是否为空,应视具体问题而定。
第02章 数据仓库原理

第4 页
2.2 数据预处理
1、数据预处理(data preprocessing) 在多数据源集成为统一数据集之前进行的数据清洗、数据
变换、数据规约等数据处理过程。 2、预处理的目的
消除多数据源集成存在的问题,为数据仓库或数据挖掘提 供一个完整、干净、准确、且有针对性的数据集合。
第5 页
2.2 数据预处理
第 10 页
2.2 数据预处理
(2) 分箱技术的步骤: ① 对数据集的数据进行排序; ② 确定箱子个数k、选定数据分箱的方法并对数据集中数据进行
分箱; ③ 选定处理箱子数据的方法,并对其重新赋值。
(3) 常用分箱方法 等深分箱、等宽分箱、自定义区间和最小熵分箱法。 (4)一般假设
箱子数为k,n(nk)个数据的数据集且按非减方式排序为 S={a1,a2,…,an),即ai[ a1, an]。
第6 页
2.2 数据预处理
① 重命名属性:对数据仓库或数据挖掘需要的属性重新赋给它 们含义明确,便于理解记忆和使用的属性名称。
数据源使用“WHCD”和“CSRQ”分别作为公民“文化程度 ”和“出生日期”的属性名。
在数据仓库中我们选用“Education” 和“Birthday”来代替 ,不仅含义明确,且可读性强,使用方便。
第 12 页
2.2 数据预处理
例2-1:设A={1, 2, 3, 3, 4, 4, 5, 6, 6, 7, 7, 8, 9,11}共14个 数据, 请用等深分箱法将其分成k=4个箱子。
解:因为k=4,n=14,所以p=n/k=14/4=3,q=143*4=2。由于数据集A已排序,因此前2个箱放4个,后为2 个箱放3个数据。 第1个箱子B1={1, 2, 3, 3}, B2={ 4, 4, 5, 6,}, B3={6, 7, 7}, B4={8, 9, 11}。
2.2 数据预处理
1、数据预处理(data preprocessing) 在多数据源集成为统一数据集之前进行的数据清洗、数据
变换、数据规约等数据处理过程。 2、预处理的目的
消除多数据源集成存在的问题,为数据仓库或数据挖掘提 供一个完整、干净、准确、且有针对性的数据集合。
第5 页
2.2 数据预处理
第 10 页
2.2 数据预处理
(2) 分箱技术的步骤: ① 对数据集的数据进行排序; ② 确定箱子个数k、选定数据分箱的方法并对数据集中数据进行
分箱; ③ 选定处理箱子数据的方法,并对其重新赋值。
(3) 常用分箱方法 等深分箱、等宽分箱、自定义区间和最小熵分箱法。 (4)一般假设
箱子数为k,n(nk)个数据的数据集且按非减方式排序为 S={a1,a2,…,an),即ai[ a1, an]。
第6 页
2.2 数据预处理
① 重命名属性:对数据仓库或数据挖掘需要的属性重新赋给它 们含义明确,便于理解记忆和使用的属性名称。
数据源使用“WHCD”和“CSRQ”分别作为公民“文化程度 ”和“出生日期”的属性名。
在数据仓库中我们选用“Education” 和“Birthday”来代替 ,不仅含义明确,且可读性强,使用方便。
第 12 页
2.2 数据预处理
例2-1:设A={1, 2, 3, 3, 4, 4, 5, 6, 6, 7, 7, 8, 9,11}共14个 数据, 请用等深分箱法将其分成k=4个箱子。
解:因为k=4,n=14,所以p=n/k=14/4=3,q=143*4=2。由于数据集A已排序,因此前2个箱放4个,后为2 个箱放3个数据。 第1个箱子B1={1, 2, 3, 3}, B2={ 4, 4, 5, 6,}, B3={6, 7, 7}, B4={8, 9, 11}。
第二章 数据库管理与网络应用

第二章 数据库管理与网络应用
第一节 数据库基础知识 一、数据管理技术的发展
数据管理技术的发展过程大致可分如下四个阶段: 人工管理阶段 文件系统阶段 这一阶段的特点: 数据库系统阶段 (1)数据以文件形式可以长期保存在计算机中并由操作系统 来管理,文件组织方式由顺序文件逐步发展到随机文件 高级数据库技术阶段 (2)操作系统的文件管理系统提供了对数据的输入和输出操 作接口,即提供数据存取方法。 (3)一个应用程序可以使用多个文件,一个文件可被多个应 用程序使用,数据可以共享。 (4)数据仍然是面向应用的,文件之间彼此孤立,不能反映 数据之间的联系,因而仍存在数据大量冗余和不一致性
第二章 数据库管理与网络应用
第一节 数据库基础知识 四、数据库系统的组成
(三)操作系统 主要负责计算机系统的进程 管理、作业管理、存储器管 理、设备管理以及文件管理 等,因此可以给DBMS的数据 组织、管理和存取提供支持。
(四)数据库应用系统
(五)数据库应用开发工具 (六)数据库管理员及其他人员(DBA)
数据管理技术的发展过程大致可分如下四个阶段: 人工管理阶段 文件系统阶段 数据库系统阶段 高级数据库技术阶段 具有代表性的是
分布式数据库
面向对象数据库
第二章 数据库管理与网络应用
第一节 数据库基础知识 一、数据管理技术的发展
数据管理技术的发展过程大致可分如下四个阶段: 人工管理阶段 文件系统阶段 数据库系统阶段 高级数据库技术阶段 具有代表性的是
(5)有功能强大的关系数据库语言SQL的支持。
第二章 数据库管理与网络应用
第一节 数据库基础知识 三、数据库模型
(三)面向对象模型(Object—Oriented Model) 在面向对象的数据模型中,最重要的概念是对象(Object) 和类(Class)。 面向对象数据 模型比网状、 层次、关系数 据模型具有更 加丰富的表达 能力。
数据库原理第二章关系数据库

关系代数小结
❖ 传统的集合运算
▪ 并、差、交、笛卡尔积
❖ 专门的关系运算
▪ 选择、投影、连接、除
❖ 5种基本运算
▪ 并、差、笛卡尔积、投影、选择
二、关系演算
❖ 关系演算是以数理逻辑中的谓词演算为基础的,通过谓词 形式来表示查询表达式。
❖ 根据谓词变元的不同,可将关系演算分为元组关系演算和 域关系演算。前者以元组为变量,简称元组演算;后者以 域为变量,简称域演算。
❖ 元组关系演算
▪ Tuple Relational Calculus ,简称TRC ▪ 元组关系演算语言ALPHA ▪ 元组关系表达式
❖ 域关系运算
▪ Domain Relational Calculus ,简称DRC ▪ 域关系演算语言QUE
1、元组关系演算
❖ 元组关系演算是以元组变量作为谓词变元的基本对象。 ❖ 元组关系演算语言的典型代表是E.F.Codd提出的ALPHA
例2:查询一名男同学的教师号和姓名,并使他的年龄最小。
GET W (1) (Student) : Student. Ssex = ‘男’ up Student.Sage
▪ 所谓的定额查询就是通过在W后面的括号中加上定额数量, 限定查询出元组的个数。
▪ 这里(1)表示查询结果中男同学的个数,取出学生表中第一 个男同学的学号和姓名。
RANGE Course CX SC SCX
GET W (Student.Sname): SCX (SCX.Sno=Student.Sno∧ CX (o=o∧CX.Pcno='6'))
例5:查询选修全部课程的学生姓名。
RANGE SC X Course CX
GET W (Student.SN) : CXSCX (SCX.SNO=Student.SNO∧O=O)
数据库第2章SQL_Server数据库的管理与使用教学课件

] [ LOG ON { < filespec > [ ,...n ] } ] [ COLLATE collation_name ] [ FOR LOAD | FOR ATTACH ]
指定数据库的 默认排序规则
支持该子句是为了与早期版 本的 Microsoft SQL Server 兼 容。
附加数据库
•22
2.3.2 使用T-SQL语言修改数据库
• 在查询分析器中的状态
•23
2.4 数据库的删除
• 2.4.1 使用快捷菜单删除数据库 • 2.4.2 使用Transact-SQL语言删除数据库
•24
2.4.1 使用快捷菜单删除数据库
(1)在企业管理器中删除数据库 (2)在查询分析器中删除数据库
•25
2.4.2 使用T-SQL语言删除数据库
• 语句格式
– DROP DATABASE database_name [ ,...n ] – 例2-10:删除Test_db1
DROP DATABASE Test_db1
– 例2-11:删除Test_db2和Test_db3.
DROP DATABASE Test_db2,Test_db3
• 即分离数据库的逆操作,通过附加数据库,可以将没有加 入SQL Server服务器的数据库文件添加到服务器中。还可 以很方便地在SQL Server 服务器之间利用分离后的数据 文件和事务日志文件组成新的数据库。
•29
2.6 数据备份和还原
• 2.6.1数据备份 • 2.6.2数据还原 • 2.6.3数据备份和还原操作
– 备份的策略 • 是指确定需备份的内容、备份的时间及备份的方式。
– 完全 (全库)备份 – 完全备份加日志备份 – 完全备份加差异备份再加日志备份。
指定数据库的 默认排序规则
支持该子句是为了与早期版 本的 Microsoft SQL Server 兼 容。
附加数据库
•22
2.3.2 使用T-SQL语言修改数据库
• 在查询分析器中的状态
•23
2.4 数据库的删除
• 2.4.1 使用快捷菜单删除数据库 • 2.4.2 使用Transact-SQL语言删除数据库
•24
2.4.1 使用快捷菜单删除数据库
(1)在企业管理器中删除数据库 (2)在查询分析器中删除数据库
•25
2.4.2 使用T-SQL语言删除数据库
• 语句格式
– DROP DATABASE database_name [ ,...n ] – 例2-10:删除Test_db1
DROP DATABASE Test_db1
– 例2-11:删除Test_db2和Test_db3.
DROP DATABASE Test_db2,Test_db3
• 即分离数据库的逆操作,通过附加数据库,可以将没有加 入SQL Server服务器的数据库文件添加到服务器中。还可 以很方便地在SQL Server 服务器之间利用分离后的数据 文件和事务日志文件组成新的数据库。
•29
2.6 数据备份和还原
• 2.6.1数据备份 • 2.6.2数据还原 • 2.6.3数据备份和还原操作
– 备份的策略 • 是指确定需备份的内容、备份的时间及备份的方式。
– 完全 (全库)备份 – 完全备份加日志备份 – 完全备份加差异备份再加日志备份。
《数据库整理》第2章 关系数据库

关系体
随数据更新不断变化
15
.
• 例如,在第1章的图1-22所示的教学数据库中,共有五个关 系,其关系模式可分别表示为:
– 学生(学号,姓名,性别,年龄,系别) – 教师(教师号,姓名,性别,年龄,职称,工资,岗位津贴,系
别)
– 课程(课程号,课程名,课时) – 选课(学号,课程号,成绩) – 授课(教师号,课程号)
• 给定一组域D1,D2,…,Dn(它们可以包含相同的元素, 即可以完全不同,也可以部分或全部相同)。D1,D2,… ,Dn的笛卡尔积为
D1×D2×……×Dn={(d1,d2,…,dn)|di∈Di,i=1,2,…,n}
每一个元素(d1,d2,…,dn)中的每一个值di叫做一个 分量(Component) ,di∈Di 每一个元素(d1,d2,…,dn)叫做一个n元组(n-Tuple ),简称元组(Tuple) (注意:元组是按序排列的)
5
.
笛卡尔积D1×D2×…×Dn的基数M(即元素(d1,d2, …,dn)的个数)为所有域的基数的累乘之
n
积,即M= m i 。 i1
例如,上述表示教师关系中姓名、性别两个域的笛卡尔 积为:
D1×D2={(李力,男),(李力,女),(王平,男),(王平 ,女),(刘伟,男),(刘伟,女)}
分量:李力、王平、刘伟、男、女 元组 :(李力,男),(李力,女) ,M=m1×m2=3×2=6
第2章 关系数据库
.
• 本章主要按数据模型的三个要素讲述关系数据库的一
些基本理论(关系模型的数据结构、关系的定义和性 质、关系的完整性、关系代数、关系数据库等 )
• 掌握关系的定义及性质、关系键、外部键等基本概念
以及关系演算语言的使用方法
数据库系统设计PPT课件

4)询问:对某些调查中的问题,可以找专人询问。 5)请用户填写设计调查表:数据库设计人员可以提前设计一个合理的、详
细的业务活动及数据要求调查表,并将此表发给相关的用户。用户根据表中 的要求,经过认真思考、充分准备后填写表中的内容。如果调查表设计得合 理,则这种方法很有效,用户也易于接受。 6)查阅数据记录:调查中还需要查阅与原系统有关的数据记录,包括账本、 档案或文献等。
数据库设计过程中:
需求分析阶段,设计者的中心工作是弄清并综合各个用 户的应用需求;
概念设计阶段,设计者要将应用需求转换为与计算机硬 件无关的、与各个数据库管理系统产品无关的概念模型 (即E-R图);
逻辑设计阶段,要完成数据库的逻辑模式和外模式的设 计工作,即系统设计者要先将E-R图转换成具体的数据库 产品支持的数据模型,形成数据库逻辑模式,然后根据 用户处理的要求、安全性的考虑建立必要的数据视图, 形成数据的外模式;
3.数据库的物理模式设计
数据库的物理模式设计要求:根据库结构的动态 特性(即数据库应用处理要求),在定的DBMS 环境下,把数据库的逻辑结构模型加以物理实现, 从而得出数据库的存储模式存取方法。
-
7
前一页 休息
第2章 数据库系统设计
2.1.2 数据库系统设计应注意的问题
1.进行数据库系统设计时应考虑计算机硬件、 软件的实际情况
模块设计、 IPO表 程序编码、编译连接、测试
运行维护
性能监测、转储/恢复、数据库重 新旧系统转换、运行、维护(修正性、适
组和重构
应性、改善性维护)
-
12
前一页 休息
第2章 数据库系统设计
2.1.4 数据库系统设计的基本步骤
-
13
前一页 休息
细的业务活动及数据要求调查表,并将此表发给相关的用户。用户根据表中 的要求,经过认真思考、充分准备后填写表中的内容。如果调查表设计得合 理,则这种方法很有效,用户也易于接受。 6)查阅数据记录:调查中还需要查阅与原系统有关的数据记录,包括账本、 档案或文献等。
数据库设计过程中:
需求分析阶段,设计者的中心工作是弄清并综合各个用 户的应用需求;
概念设计阶段,设计者要将应用需求转换为与计算机硬 件无关的、与各个数据库管理系统产品无关的概念模型 (即E-R图);
逻辑设计阶段,要完成数据库的逻辑模式和外模式的设 计工作,即系统设计者要先将E-R图转换成具体的数据库 产品支持的数据模型,形成数据库逻辑模式,然后根据 用户处理的要求、安全性的考虑建立必要的数据视图, 形成数据的外模式;
3.数据库的物理模式设计
数据库的物理模式设计要求:根据库结构的动态 特性(即数据库应用处理要求),在定的DBMS 环境下,把数据库的逻辑结构模型加以物理实现, 从而得出数据库的存储模式存取方法。
-
7
前一页 休息
第2章 数据库系统设计
2.1.2 数据库系统设计应注意的问题
1.进行数据库系统设计时应考虑计算机硬件、 软件的实际情况
模块设计、 IPO表 程序编码、编译连接、测试
运行维护
性能监测、转储/恢复、数据库重 新旧系统转换、运行、维护(修正性、适
组和重构
应性、改善性维护)
-
12
前一页 休息
第2章 数据库系统设计
2.1.4 数据库系统设计的基本步骤
-
13
前一页 休息
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
8
2.1.1 Basic Structure (38)
• Formally, given sets D1, D2, …. Dn a relation r is a subset of D1 x D2 x … x Dn (Cartesian product) • Thus, a relation is a set of n-tuples (a1, a2, …, an) where each ai Di. • Example: If customer_name = {Jones, Smith, Curry, Lindsay} customer_street = {Main, North, Park} customer_city = {Harrison, Rye, Pittsfield} Then r = { (Jones, Main, Harrison), (Smith, North, Rye), (Curry, North, Rye), (Lindsay, Park, Pittsfield) } is a relation over customer_name x customer_street x 9 customer_city
15
2.1.3 Keys (码)(42)
• A superkey (超码)is a set of one or more attributes that allow us to identify a unique tuple in the relation.
– Example: {customer_name, customer_id},
Attribute Types
• Each attribute of a relation has a name • The set of allowed values for each attribute is called the domain of the attribute • Attribute values are (normally) required to be atomic; that is, indivisible. • Several attributes have the same domain. • The special value null is a member of every domain • The null value causes complications in the definition of many operations – We shall ignore the effect of null values in our main presentation and consider their effect later
20
Select Operation (选择运算) (P46)
Notation: p(r) p is called the selection predicate (选择谓词/条件). r is a relation name Defined as: p(r) = {t | t r and p(t)} Where p is a formula in propositional calculus consisting of terms connected by : (and), (or), (not) Each term is one of: <attribute> op <attribute> or <constant> where op is one of: =, , >, . <. (比较运算符) • Example of selection: (Figure 2.6 & 2.9 ) • • • •
Example: customer (Customer_schema)
11
Relation Instance (40)
• The current values (relation instance) of a relation are specified by a table. • An element t of r is a tuple, represented by a row in a table.
12
Relations are Unordered
Order of tuples is irrelevant (tuples may be stored in
an arbitrary order) (figure 2-1, 2-2)
Example: account relation with unordered tuples.
• Six basic operators
– select: (选择) – project: (投影) – union: (并) – set difference: – (集合差) – Cartesian product: x (笛卡尔积) – rename: (更名)
• The operators take one or two relations as inputs and produce a new relation as a result.
account : stores information about accounts. depositor : stores information about which customer owns which account. customer : stores information about customers. Figure 2.1,2.3,2.4,2.5,2.6,2.7
{customer_name} and {customer_id} are superkeys of customer relation (P12-F1.2), if no two customers can possibly have the same name.
16
Keys (Cont.)
• If K is minimal superkey, K is named a candidate key (候选码).
branch_name=―Perryridge‖(loan)
21
Select Operation – Example
Relation r
A B C
10
Relation Schema (40)
• A1, A2, …, An are attribute names R = (A1, A2, …, An ) is a relation schema
Example:
Account_schema = (account_number, branch _street, balance) r(R) is a relation on the relation schema R
13
Database_ brief design process
• A database consists of multiple relations.
• Information about an enterprise is broken up into parts, with each relation storing one part of the information.
– E.g. customer_name and account_number attributes of depositor are foreign keys to customer and account respectively.
• Schema diagram: along with primary key and foreign key dependencies in a database schema.
18
Query Language(查询语言) (45)
• Language in which user requests information from the database. • Categories(种类) of languages
– Procedural – Non-procedural, or declarative
select: project: union: set difference: – Cartesian product: x rename:
2
Relation
3
Attribute
4
Domain
5
Tuple
6
“Relational Models” and “Tables”
7
Example of a Relation: account (P38)
attributes (or columns) customer_name customer_street customer_city
Jones Smith Curry Lindsay
Main North North Park customer
Harrison Rye Rye Pittsfield
tuples (or rows)
14
Database (Cont.)
• Storing all information as a single relation, such as
bank (account_number, balance, customer_name, ..)
results in – Repetition(重复) of information (e.g., two customers own an account) – the need for null values (e.g., represent a customer without an account) • Chapter 7 deals with how to design relational schemas.