《你不可不知的关系数据库理论》——14.3 练习

14.3 练习

14.1 从语义上判断下面哪些是合法的独立SQL表达式(即没有嵌套在其他表达式中的表达式),哪些不是?(A和B是表名,假设这里的表都能够满足特定运算的需求。)>{注意:}这个练习有点不公平,因为在本书中没有覆盖到足够的SQL内容来回答所有的问题,但是我想值得尝试一下,对你也会有益处的。但我至少解释一下SQL结构“TABLE T”(T就是一个简单的表,而不是常用的表的表达式),它是表达式“(SELECT * FROM T)”的缩写。也许还要提醒你一下,在关系型中,交运算是自然联接的一种特殊形式。

从这个练习中你可以得出什么结论?

14.2 如果x + y是一个数值表达式,x的值为3,我们可以用标识符3代替变量引用x,即3 + y(这个表达式逻辑上等价于初始的表达式)。在练习14.1中,如果我们用一个“表标识符”(即恰当的带有确定值的表达式)替代A 或者B,那么SQL表达式或者替代后的表达式会是什么样子的?

时间: 2024-10-22 17:25:59

《你不可不知的关系数据库理论》——14.3 练习的相关文章

《你不可不知的关系数据库理论》导读

前言 你不可不知的关系数据库理论关系数据模型是百年来最伟大的技术发明之一,它是我们完成数据库领域任何事情的基础.的确,它使数据库管理成为一门科学,而不再像过去那样是一些技巧.技术和经验法则的特定集合.因此,每一个与数据库管理有关的专业人员,或多或少都会主动去获得一些与关系模型有关的知识,以加深对关系模型的理解.因为如果没有它,想开展高效的工作.获得较高的工作性能几乎是不可能的. 不幸的是,想要达到如上所说的"获得知识,加深理解"是不容易的.这有多方面的原因,但影响最大的原因是SQL语言

《你不可不知的关系数据库理论》——第1章 数据库基本概念

第1章 数据库基本概念 你不可不知的关系数据库理论我们的生活被琐事浪费掉了--简化,简化. --Henry David Thoreau: Walden(1854) 本章是一个介绍性的概述,目的是提供一个距离我们非常遥远的观点.它故意没有讲解得很深奥,如果你已经了解了关于数据库管理的一些知识,也许会发现本章内容都已熟悉.但是我想你应该花些时间把本章从头到尾通读一遍,这是非常值得的,如果只是想获得背景知识,可以看后续的章节.同时,本章还介绍了一些可以运行的示例,在后面的章节中我们也一定会遇到这些例子

《你不可不知的关系数据库理论》——14.2 SQL与关系模型的不同点

14.2 SQL与关系模型的不同点 此部分列出了SQL与关系模型的不同点,主要是为了参考,同时顺便进行一些附加说明.我知道可能会有人对列表中的个别术语吹毛求疵,一一解释列表中这些特性是非常不容易的,特别是它的正交性(例如,保证这些特性都相互独立,互不影响).但是我认为这些吹毛求疵都不是重要的,重要的是它们累积起来造成的影响,坦率地说是相当惊人的3. 不再啰嗦了,下面具体来看一下它们的不同点: SQL不能够完全区分表的值和表变量.SQL表与关系(或关系变量)不同,因为它们不允许或不需要(根据具体情

《你不可不知的关系数据库理论》——14.4 答案

14.4 答案 14.1 SQL表的表达式采用正规的BNF语法,为了完整地回答这个问题,可以参照SQL and Relational Theory(这个练习中的例子就摘自此书). 至于从练习中得出的结论,要依靠你自己的回答来总结,但是我知道我自己得到的结论. 14.2 影响如下:表达式b原来是不合法的,但现在变成了合法的.表达式c..e..k..l..m.是合法的,但变成了不合法的.其他所有的表达式原来是不合法的,现在仍然是不合法的.从这个练习中你可以得出什么结论? 1支持这些声明的证据(关于不

《你不可不知的关系数据库理论》——14.1 概述

14.1 概述 再重复一下我在第10章讲过的内容,我确信先了解关系模型,然后再学习SQL会比先学习SQL再学习关系模型要容易些.其原因是如果先学习SQL再学习关系模型的话,会需要很多未了解的知识(因此本书才按照这样的结构来安排,就像在第1章中介绍的一样).实际上,我相信并不是任何人都真正了解SQL的方方面面,只是知道了这种语言,而不是真正了解它的实质.SQL如此庞大.如此复杂.如此特别.如此非正交(此处忽略了它的逻辑差异.不一致性.矛盾等1),经过分析后我不得不相信SQL是很难教会的.我不止一次

《你不可不知的关系数据库理论》——1.3 什么是关系型DBMS

1.3 什么是关系型DBMS 现在我们已经知道了什么是DBMS,但什么是关系型DBMS呢?当然,首先它是一个DBMS,它要提供本章介绍的DBMS具备的所有功能:数据存储.查询.修改.恢复控制.并发控制.安全控制和完整性控制,以及本书中没有讨论的其他功能.但是第二点要注意的是,它又是关系型的,这就意味着用户接口在真正实现时必须是关系模型.换句话说,关系模型被看作是DBMS中实现用户接口的一种方法. 在继续讲解之前,还要强调一点,这个方法(即关系模型)其实很简单!关系模型的这些方法并不是紧身衣,相反

《你不可不知的关系数据库理论》——1.4 数据库系统与程序系统

1.4 数据库系统与程序系统 这两个概念好像不太好区别,但是也有一些相似性.事实上,通常不认为一个数据库系统就是一个程序系统(更确切地说,是一种特例).图 1.3 给出了代码片段,这段代码的目的是要计算一维数组A中整型数据的和,并将其显示在终端上(该片段采用一种假设的语言来表示,但该语言具有自解析性). 相关说明如下. 语句:整个代码由9条语句组成.在程序设计语言中,一条语句(statement)就是一个指令,它可以引发一些动作,比如,定义或修改一个变量.改变控制流等.通过观察你会发现语句与表达

《你不可不知的关系数据库理论》——1.1 什么是数据库

1.1 什么是数据库 数据库被认为是一种电子文件柜,它包含了一些数字化的信息(即数据),这些信息可以被永久保存在某种存储介质上,通常是被保存在磁盘上.用户可以通过管理数据库的软件发出请求(request)或命令(command)来向数据库中插入信息,删除.修改或检索数据库中已经存在的信息,这种管理数据库的软件叫做数据库管理系统(DBMS). 注意:在本书中,术语user的含义将根据上下文的要求理解为应用程序员或者是交互用户1或者是应用程序员和交互用户.实际上,现在这些发给DBMS的用户请求可以采

《你不可不知的关系数据库理论》——1.5 练习

1.5 练习 现在到了该做练习的时候了.当然,在本书中的第1章就进行查找练习是不可能的,下面大多数是复习题.尽管如此,我还是建议你们尽力独自去回答问题,而不要去看后面给出的答案.注意,前两个练习似乎有些不公平,因为我还没有�% 1这里仍然指的是计算机专业人员,而不是一个天才的"终端用户",他可能会合理地忽略掉本书中讨论的大部分内容.2本书的前言中曾提醒读者,在本书中我将用缩写形式"SQL and Relational Theory"代表我的著作SQL and Rel