开发者社区> 异步社区> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

《你不可不知的关系数据库理论》——第14章 SQL与关系模型

简介:
+关注继续查看

第14章 SQL与关系模型

你不可不知的关系数据库理论
在理想与现实之间,往往会有阴影降临。

——T.S.Eliot:The Hollow Men(1925)

从前面几章的介绍可以看出,SQL与关系模型不是一回事,或者更具体一点地说,SQL被看作是一种具体的关系型语言,但显然SQL在很多方面都无法把想法和潜在的抽象关系模型相对应。实际上,SQL要忍受两方面的过错,即省略的过错和代理的过错,一方面它不能正确支持(或者根本就不支持)关系模型的很多地方,另一方面它所支持的地方又不能与任何关系模型相对应。(当然,在整本书中我只把注意力局限在这里,即只关心SQL的核心特征。)省略的一些例子可以很好地支持等价、表类型、关系代数运算符。非关系型特征的例子有空值、重复行、从左到右排序的列等。

本书中我的主要目的是描述和解释关系模型,而不是SQL。但是我认为给出SQL的普遍存在的特征(更确切地说,不论好坏,有一点可以坚持,即数据库专业人员确实需要面对它,利用它处理实际问题)可以为专业人士提供多种方法解决问题,SQL的这些方法都违背了抽象模型的一些规定。实际上,我非常相信这样的专业人士对关系模型本身已经了如指掌,知晓模型和SQL之间的差异可以对他们有所帮助,因此本章内容就来讲解SQL与关系模型之间的差异。

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
初识 Sql Server存储过程
开篇语 之前的公司并未使用存储过程来做项目,所以小生对存储过程的调用、使用也是一知半解,刚好这家公司就大量用到了存储过程 这次做的功能,为了保持风格一致,也是需要使用存储过程来实现动态sql和数据分页 下面一起来看看如何实现的吧(小白一枚,不喜勿喷,请轻拍)~ 调用存储过程(其中condit...
751 0
sqlServer存储过程
1、创建存储过程报错:     'CREATE/ALTER PROCEDURE' 必须是查询批次中的第一个语句。 解决方法: use databaseName 后面要加上一句: GO ...
774 0
SQL Server基础之<存储过程>
原文:SQL Server基础之   简单来说,存储过程就是一条或者多条sql语句的集合,可视为批处理文件,但是其作用不仅限于批处理。本篇主要介绍变量的使用,存储过程和存储函数的创建,调用,查看,修改以及删除操作。
1417 0
SQLSERVER存储过程语法详解
SQL SERVER存储过程语法: Create PROC [ EDURE ] procedure_name [ ; number ]     [ { @parameter data_type }         [ VARYING ] [ = default ] [ OUTPUT ]     ] [ ,...n ]   [ WITH     { RECOMPILE | ENCRY
1572 0
Sql Server 存储过程基础
        将常用的或很复杂的工作,预先用SQL语句写好并用一个指定的名称存储起来, 那么以后要叫数据库提供与已定义好的存储过程的功能相同的服务时,只需调用execute,即可自动完成命令。       存储过程的优点:        1.存储过程只在创造时进行编译,以后每次执行存储过程都不需再重新编译,而一般SQL语句每执行一次就编译一次,所以使用存储过程可提高数据库执行速度
954 0
+关注
异步社区
异步社区(www.epubit.com)是人民邮电出版社旗下IT专业图书旗舰社区,也是国内领先的IT专业图书社区,致力于优质学习内容的出版和分享,实现了纸书电子书的同步上架,于2015年8月上线运营。公众号【异步图书】,每日赠送异步新书。
12049
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
冬季实战营第三期:MySQL数据库进阶实战
立即下载