SQL与关系数据库理论
SQL与关系数据库理论
C. J. Date 著
周成兴 等译
出版时间:2010年08月
页数:400
确保你的SQL代码正确,确保你的数据库模式是健壮且可维护的最好办法,就是理解SQL底层的理论。如果不能很好地精通这个理论,你可能就会陷入到很多陷阱中。在本书中,作者C. J. Date阐述了你该如何把关系理论直接应用到SQL的应用中。通过大量的示例及其背后的推理阐述,你将学会如何处理如下的很多常见难题:

· 数据库是否应该使用视图而不是基表来访问?
· 数据库中的Null是否使你得到了错误的答案,为什么?关于Null,你又可以做些什么呢?
· 是否可以编写一个SQL查询,通过这个查询,可以得到在同一个部门中同时工作超过六个月的员工?
· SQL支持“量化的比较”,但是最好避免使用它们。为什么?你又该如何来避免使用它们?
· 约束是非常重要的,但是大部分的SQL产品都没有恰当地支持它们。为了解决这个问题,你能做些什么呢?

自E. F. Codd于1969年首次定义关系模式以来,数据库理论与实践就一直在发展。本书独立于任何SQL产品,描绘了关系数据库理论十几年来的研究进展,为读者介绍了有关关系数据库理论的最新知识。任何具有一定SQL知识的人都可以从本书的很多方面受益。
C. J. Date于1970的早期在IBM开始从事数据库方面工作。他是一个多产的作者,其著名的教材是“An Introduction to Database Systems(Addison-Wesley)”,该书被广泛地认为是关于数据库管理基础知识的最好教科书之一。
  1. 前言
  2. 第1章 设置场景
  3. 关系模式是非常容易被误解的
  4. 一些术语的注释
  5. 法则,而不是产品
  6. 最初模式的一个回顾
  7. 模型和实现
  8. 关系的特性
  9. 基础关系和产生的关系
  10. 关系和关系变量
  11. 值和变量
  12. 结论
  13. 练习
  14. 第2章 类型与域
  15. 类型和关系
  16. 等式比较
  17. 数据值的原子性
  18. 什么是类型
  19. 标量和非标量类型
  20. SQL中的标量类型
  21. SQL中的类型检查和强制类型转换
  22. SQL中的一些整序
  23. SQL中的行和表类型
  24. 结论
  25. 练习
  26. 第3章 元组与关系、行和表
  27. 什么是元组
  28. SQL中的行
  29. 什么是关系
  30. 关系和它们的关系体
  31. 关系是n维的
  32. 关系比较
  33. TABLE_DUM和TABLE_DEE
  34. SQL中的表
  35. SQL中列的命名
  36. 结论
  37. 练习
  38. 第4章 无重复与无空值
  39. 重复有什么问题
  40. 复行:进一步讨论
  41. 在SQL中避免复行
  42. 空值有什么错
  43. 在SQL中避免空值
  44. 对外连接的评论
  45. 结论
  46. 练习
  47. 第5章 基本关系变量与基本表
  48. 数据定义
  49. 更新是集合级别的
  50. 关系赋值
  51. 更多关于候选键的内容
  52. 关于外键更多的讨论
  53. 关系变量和断言
  54. 关系和类型
  55. 练习
  56. 第6章 SQL与关系代数I:原始的操作符
  57. 一些预备知识
  58. 有关闭包的更多讨论
  59. 约束
  60. 投影
  61. 连接
  62. 并、交和差
  63. 哪些操作符是原始的
  64. 每次都形成表达式的一小步
  65. 关系表达式的意思是什么
  66. 求一个表表达式的值
  67. 表达式转换
  68. 属性名字上的依赖
  69. 练习
  70. 第7章 SQL与关系代数II:附加的操作符
  71. 半连接和半差
  72. 扩展
  73. 映像关系
  74. 聚集操作符
  75. 映像关系再讨论
  76. 概要
  77. 概要再论
  78. 分组和不分组
  79. what if查询
  80. ORDER BY如何
  81. 练习
  82. 第8章 SQL与约束
  83. 类型约束
  84. SQL中的类型约束
  85. 数据库约束
  86. SQL中数据库约束
  87. 事务
  88. 为什么数据库约束的检测必须是实时的
  89. 难道某些检测不是不得不被推迟吗
  90. 约束和谓词
  91. 各种各样的问题
  92. 练习
  93. 第9章 SQL与视图
  94. 视图是关系变量
  95. 视图和谓词
  96. 获取操作
  97. 视图和约束
  98. 更新操作
  99. 视图是为了什么
  100. 视图和快照
  101. 练习
  102. 第10章 SQL与逻辑
  103. 简单和复合的命题
  104. 简单和复合的谓词
  105. 定量
  106. 关系计算
  107. 更多的关于量化
  108. 一些等价形式
  109. 结论
  110. 练习
  111. 第11章 使用逻辑来形式化SQL表达式
  112. 一些转换规则
  113. 例子1:逻辑隐含
  114. 例子2:普遍的限定
  115. 例子3:隐含和一般的限制
  116. 例子4:相关的子查询
  117. 例子5:命名子查询
  118. 例子6:更多的关于命名子表达式
  119. 例子7:处理不确定性
  120. 例子8:使用COUNT
  121. 例子9:连接查询
  122. 例子10:唯一限制
  123. 例子11:ALL 或者 ANY比较
  124. 例子12: GROUP BY 和HAVING
  125. 练习
  126. 第12章 SQL主体杂项
  127. SELECT *
  128. 显表
  129. 名字限定
  130. 范围变量
  131. 子查询
  132. “可能的非确定”表达式
  133. 空集
  134. SQL表表达式的BNF范式语法
  135. 练习
  136. 附录A 关系模式
  137. 附录B 数据库设计理论
  138. 附录C 练习答案
  139. 附录D 进一步阅读
书名:SQL与关系数据库理论
作者:C. J. Date 著
译者:周成兴 等译
国内出版社:清华大学出版社
出版时间:2010年08月
页数:400
书号:978-7-302-22400-6
原版书出版商:O'Reilly Media
C. J. Date
 
本书封面图片来自www.jupiterimages.com。