没有合适的资源?快使用搜索试试~ 我知道了~
首页数据库管理系统概览:关系模型与SQL介绍
数据库管理系统概览:关系模型与SQL介绍
需积分: 1 3 下载量 185 浏览量
更新于2024-07-18
收藏 19.19MB PDF 举报
"数据库原理导论" 本资源是一份关于数据库原理的导论性材料,旨在引导读者理解数据库系统的基础概念和重要性。内容分为四个部分,涵盖了数据库的基础知识,包括数据库系统的架构、关系系统概述、SQL语言的介绍等。 在第一章“数据库管理概述”中,作者首先阐述了数据库系统的本质,将其比喻为一个电子文件柜,用于存储和管理计算机数据。这一章讲解了用户可以执行的基本操作,如添加、查询、更新和删除数据。通过一个名为CELLAR的酒窖数据库示例,展示了数据库操作的概念,包括插入、修改和删除。书中强调,这些计算机文件常被称为表,由行(记录)和列(字段)组成。 第二章介绍了数据库系统的一般体系结构——ANSI/SPARC体系结构,这是理解和分析数据库系统工作原理的基础。这个架构为后续章节提供了理论框架。 第三章聚焦于关系系统,为后续深入讨论打下基础。关系系统是数据库领域的核心概念,尤其是关系数据库模型,它以表格形式组织数据,每个表格由多个记录组成,每个记录包含若干字段。此外,本章还引入了实例数据库供应商和零件数据库作为实际应用的案例。 第四章则详细介绍了标准的关系语言SQL,这是与数据库交互的主要工具,用于执行各种数据操作,如创建、查询、更新和删除数据库中的数据。 这份导论涵盖了数据库的基础知识,适合初学者了解数据库系统的基本原理和操作方式。通过学习,读者将能够理解数据库的核心概念,包括数据库的结构、操作以及SQL语言的应用,为进一步深入学习数据库管理打下坚实基础。
资源详情
资源推荐
![](https://csdnimg.cn/release/download_crawler_static/10830005/bg10.jpg)
的主要教学内容,本书的重点 (如1 . 1 所指出的)也主要针对关系系统。
那么究竟什么是关系系统呢?很显然本书在此还不能给一个完满的解答,但是可以先给
出一个大致的定义,之后再给出更详尽的答案。简言之,关系系统是指:
1) 数据以表(而且只有表)的形式呈现给用户;且
2) 提供给用户的操作(如,检索)以表为操作对象,即操作是从旧表中生成新的表。例
如,“选择”操作,是提取某指定的表的行子集,而“投影”操作是提取一个表的某些
列的子集,表的行子集和列子集本身都可以看作一个表。
注意:这样的系统之所以称为“关系的”,是因为表的数学用语为关系;当然,关系和表
这两个词至少在非正式的情况可以当作同义词(见第 3章和第5章进一步的讨论)。这里应指明
以下对原因的解释是不成立的,即因为实体联系图中联系的数学用语为关系;实际上,在关
系系统与这些图之间也没有多少直接的联系。参见第 1 3 章。
这里重复一下,我们会在后面更详细地阐述这些定义,但这里只是开个头。图 1 - 8提供了
一个例子。图中a部分的数据包含一个名为 C E L L A R 的表(实际上,它是图 1 - 1中的C E L L A R表
的一个简化版本,规模减小是为了便于管理)。图中b部分是两个查找的例子,一个包含选择
或行子集操作,另一个包含投影或列子集操作。注意:两个查找都是用 SQL 来实现的。
现在我们可以这样区分关系系统和非关系系统。如前所述,关系系统的用户把数据看作
表,而且只能是表。非关系系统的用户则把数据看作其他的数据结构,代替或者扩展关系系
统中的表结构。这些结构需要相应
的操作。例如,像 I B M 的 I M S 这样
的层次系统,展现给用户的数据是
树结构(层次)的集合的形式,对
这些结构的操作符包括对遍历指针
的
—
即表示整个层次路径的指针
操作符(与此对比,这是与关系系
统相区分的重要特征,关系系统没
有这样的指针)。
进一步说,根据数据结构和提
供给用户的操作符,数据库系统实
际上能够很方便地加以分类。根据
这一点,以往系统(非关系的)可
分为三大类,即倒排表 、层次的和网状的 系统 。本书中我们不详细讨论这些系统,因为至
少从技术角度上已经是过时了(如果有兴趣,可参见 [ 1 . 5 ],其中有对三种系统详细的描述)。
但是,应当指出这里的网状 ( n e t w o r k ) 与通信上的网络 ( n e t w o r k )毫无联系,它指的是系统所支
持的数据结构和操作符。
注意:网状系统又可称为 CODASYL 系统或 D B T G系统,这是因为其核心是由数据库系
统语言协会(C O D A S Y L )下属的数据库任务组( D B T G)所提出的。可能这一系统的典型代
16使用第一部分 基 础 知 识
下载
与关系模型类似,本书的早期版本引用倒排表、层次的和网状的模型(许多文献也这样),但使用这些词
语会误导读者,因为和关系模型不同,倒排表、层次的和网状的“模型”都是根据事实定义的;即商业的
倒排表、层次的和网状系统的产品首先实现,而相应的“模型”是通过从那些现存的实际系统中归纳得出
的定义。
图1-8 关系系统的数据结构和操作符(例子)
给定表
操作符(举例)
选择
投影
结果
结果
![](https://csdnimg.cn/release/download_crawler_static/10830005/bg11.jpg)
表是Computer Associates International 公司的I D M S。和层次系统一样(与关系系统不同),这
些系统都把指针提供给用户。
第一代关系产品出现于 2 0 世纪7 0 年代末8 0 年代初。在写本书之际,绝大多数数据库系统
都是关系系统。它们可以在各种硬件和软件的平台上运行。最主要的产品 (以字母顺序排列)包
括:IBM 公司的D B 2;Computer Associates International公司的 Ingres II ;Informix Software
公司 的 Informix Dynamic Server;微软公司的Microsoft SQL Server ;O r a c l e公司 的 O r a c l e
8i ;Sybase 公司的 Sybase Adaptive Server 。注意:本书中以后涉及到这些产品时,我们分别
只提及缩写名字D B 2 、I n g r e s、I n f o r m i x、SQL Server、O r a c l e 、S y b a s e ,等。
最近,一些对象和对象/关系型数据库产品推向市场 。对象关系系统表示(对大部分)
某些初始的关系型数据库产品向上兼容的扩展,如 D B 2 和I n f o r m i x;对象系统(面向对象)表
示试图做一些彻底的改变,如 GemStone Systems公司的 GemStone 和 Versant Object
Technology 公司的 Versant ODBMS。我们将会在本书第六部分讨论这些新的系统。
除以上谈到的数据模型方法以外,近几年的研究还提出了一些新的方法,包括多维的 方
法和基于逻辑(也称演绎或专家)的方法。我们将在第 2 1 章讨论多维系统,在第 2 3 章讨论基
于逻辑的系统。
1.7 小结
现在概括本章所讨论的主要问题。首先,数据库系统可以被看作计算机化的存储记录的
系统。该系统包括数据(存储在数据库中)、硬件、软件(尤其是数据库管理系统)和
—
最
重要的
—
用户。用户又可分成应用程序员、最终用户和数据库管理员 ( D B A ) 。D B A 负责根
据数据管理员制定的政策来管理数据库和数据库系统。
数据库是集成和共享的;它们用于存储持久数据。这些数据通常可以表示为实体及实体
间的联系
—
尽管实际上联系只不过是一种特殊实体。我们简要介绍了实体/联系图。
数据库系统有许多优点。其中最重要的一点就是数据独立性。数据独立性的定义是指能
使应用程序免于随着数据物理存储和访问方式的变化而变化。另外,数据独立性要求数据模
型和它的实现分开(提醒大家关注数据模型一词,它可能有两种截然不同的意义)。
数据库系统通常支持事务,即工作的逻辑单位。事务的优点之一是,即便在事务执行中
系统出现故障,也能确保事务原子性(即要么全做,要么全不做 )。
最后,数据库系统以许多不同的方法为基础。特别地,关系系统以称为关系模型的形式
化理论为基础。在关系模型中,数据表示为表中的行(解释为真命题),所提供的操作直接支
持从已指定的真命题推断出其他真命题的处理过程。从经济的和理论的前景来看,关系系统
很显然是最重要的(这种情况在可预见的将来是不可能改变的)。我们已经给出了几个 S Q L 的
例子(特别地,例如 S Q L 的S E L E C T、I N S E R T 、U P D AT E 和D E L E T E语句),S Q L 是关系系
统的标准语言。本书将着重于关系系统的讨论,对 S Q L 则论述不多。
练习
1.1 定义下列术语
第1章 数据库管理概述使用17
下载
这里对象一词具有特定含义,这一含义将在第六部分解释。在那之前,仍使用该词的通常含义,以免句子
的含义混淆。
![](https://csdnimg.cn/release/download_crawler_static/10830005/bg12.jpg)
1.2 使用数据库系统的优点是什么?
1.3 使用数据库系统的缺点是什么?
1.4 什么是关系系统?区分关系和非关系系统。
1.5 什么是数据模型?解释数据模型与其实现的差别。为什么这个差别很重要?
1.6 给出下列对图1 - 1中C E L L A R数据库的S Q L 检索操作的结果:
1.7 从练习1 . 6 的每个答案中选出一行,用自己的话解释成真命题。
1.8 给出下列对图1 - 1中酒窖数据库的S Q L 更新操作的结果:
18使用第一部分 基 础 知 识
下载
二元联系
命令驱动界面
并发访问
数据管理
数据库
数据库系统
数据独立性
数据库管理系统
数据库管理员
实体
实体/联系图
表格驱动界面
集成
完整性
菜单驱动界面
多用户系统
联机应用程序
持久数据
属性
查询语言
冗余
安全性
共享
存储字段
存储文件
事务
![](https://csdnimg.cn/release/download_crawler_static/10830005/bg13.jpg)
1.9 写出对酒窖数据库执行下列操作的 S Q L 语句:
(a) 找出所有Geyser Peak酒的b i n 号、酒的名字和瓶数。
(b) 找出存储量超过5瓶的酒的b i n 号和酒的名字。
(c) 找出所有红酒的b i n号。
(d) 对b i n 号为3 0的加3瓶酒。
(e) 从库存中删除所有C h a r d o n n a y 。
(f) 加入一条新记录:1 2 瓶Gary Farrell Merlot:b i n 号5 5 ,1 9 9 6 年生产,2 0 0 1 年出厂。
1.10 假定有一些古典音乐的 CD 和/或L P和/或磁带,并且想要建立一个数据库来查找某作曲
家(如: S i b e l i u s ),或某指挥家(如: Simon Rattle),或某独唱家 (如: A r t h u r
G r u m i a u x ),或某作品(如:贝多芬的第 5交响曲),或某管弦乐队( the NYPO),或某
种作品(如:violin concerto)或室内乐乐队(如:Kronos Quartet)的有关资料,为此数
据库画出一个像图1 - 6那样的实体/联系图。
参考文献和简介
1.1 E . F.Codd :“ Data Models in Database Management,” Proc.Workshop on Data Abstraction,
D a t a b a s e ,and Conceptual Modelling, Pingree Park,Colo.(June 1980);ACM SIGART
N e w s l e t t e r No.74 (January 1981);ACM SIGMOD Record 11,No.2(February 1981);ACM
SIGPLAN Notice 1 6 ,No.1(January 1981)。
C o d d 是关系模型的创始人,在参考文献 [ 5 . 1 ] 中,他首次描述了该模型。但是,并没
有定义数据模型这个概念
—
不过现在的论文中包括了。提出的问题是:数据模型,尤
其是关系模型,通常的目的是什么?想要怎样?并对这个声明继续提供证明,关系模型
实际上是第一个定义的数据模型(换句话说, C o d d 声称是数据模型概念的创始人,同时
也是关系数据模型的创始人)。
1.2 Hugh Darwen:“ What a Database Really Is: Predicates and Propositions, ” in C.J.Date,
Hugh Darwen,and David McGoveran,Relational Database Wr i t i n g s 1 9 9 4 - 1 9 9 7 . Reading,
Mass.: Addison-Wesley (1998).
在1 . 3 节的末尾简要提到过,数据库最好被看作真命题的集合,本书给出了这一观点
的非正式(但十分精确)的解释。
1.3 C.J.Date and P.Hopewell:“Storage Structure and Physical Data Independence, ” Proc.1971
ACM SIGFIDET Workshop on Data Definition ,A c c e s s ,and Control,San Diego,
California (November 1971).
1.4 C.J.Date and P.Hopewell:“ File Definition and Logical Data Independence,” Proc.1971
ACM SIGFIDET Workshop on Data Definition ,A c c e s s ,and Control,San Diego,
California (November 1971).
参考文献[ 1 . 3 ~ 1 . 4 ] 第一次定义和区分了数据的物理独立性和逻辑独立性。
1.5 C.J.Date: Relational Database Wr i t i n g s 1 9 9 1 - 1 9 9 4,R e a d i n g ,Mass.: Addison-
We s l e y ( 1 9 9 5 ) .
部分练习答案
1.3 一些缺点如下:
第1章 数据库管理概述使用19
下载
![](https://csdnimg.cn/release/download_crawler_static/10830005/bg14.jpg)
• 折衷的安全性(没有很好控制);
• 折衷的完整性(没有很好控制);
• 需要额外的硬件;
• 执行开销非常大;
• 成功的操作至关重要(企业可能受攻击而操作失败);
• 系统可能很复杂(尽管这些复杂性对用户是不可见的)。
1.7 只给出a部分的答案“R a f a n e l l i 是Z i n f a n d e l的一个生产商”,或更精确地说,“某个号包含
一些Z i n f a n d e l酒,该酒是由R a f a n e l l i在某年生产的,将在某年饮用”
1.8 (a) 在C E L L A R表中加入B i n # 为8 0 的行。
(b) Bin#为4 5 、4 8 、6 4 和7 2 的行从C E L L A R表中删除。
(c) Bin#为5 0 的行的瓶数置为5。
(d) 和c相同。
顺便提一下,通过主码值找到一行是很方便的(C E L L A R 表的主码是{ B I N # }
—
见第8章)。
1.9 (a) SELECT BIN#,W I N E,B O T T L E S
FROM CELLAR
WHERE PRODUCER='Geyser Peak';
( b ) SELECT BIN#,WINE
FROM CELLAR
WHERE BOTTTLES>5;
( c ) SELECT BIN#
FROM CELLAR
WHERE WINE='Cab.Sauvignon'
OR WINE='Pinot Noir'
OR WINE='Zinfandel'
OR WINE='Syrah'
OR ......;
20使用第一部分 基 础 知 识
下载
1.6
剩余603页未读,继续阅读
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![application/x-rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://profile-avatar.csdnimg.cn/default.jpg!1)
vincentlinux4
- 粉丝: 0
- 资源: 1
上传资源 快速赚钱
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助
![](https://csdnimg.cn/release/wenkucmsfe/public/img/voice.245cc511.png)
最新资源
- Hadoop生态系统与MapReduce详解
- MDS系列三相整流桥模块技术规格与特性
- MFC编程:指针与句柄获取全面解析
- LM06:多模4G高速数据模块,支持GSM至TD-LTE
- 使用Gradle与Nexus构建私有仓库
- JAVA编程规范指南:命名规则与文件样式
- EMC VNX5500 存储系统日常维护指南
- 大数据驱动的互联网用户体验深度管理策略
- 改进型Booth算法:32位浮点阵列乘法器的高速设计与算法比较
- H3CNE网络认证重点知识整理
- Linux环境下MongoDB的详细安装教程
- 压缩文法的等价变换与多余规则删除
- BRMS入门指南:JBOSS安装与基础操作详解
- Win7环境下Android开发环境配置全攻略
- SHT10 C语言程序与LCD1602显示实例及精度校准
- 反垃圾邮件技术:现状与前景
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
![](https://img-home.csdnimg.cn/images/20220527035711.png)
![](https://img-home.csdnimg.cn/images/20220527035711.png)
![](https://img-home.csdnimg.cn/images/20220527035111.png)
安全验证
文档复制为VIP权益,开通VIP直接复制
![](https://csdnimg.cn/release/wenkucmsfe/public/img/green-success.6a4acb44.png)