SQL与关系数据库理论(第2版)
C. J. Date
单世民, 何英昊, 许侃 译
出版时间:2014年07月
页数:416
对于数据库管理与开发人员来说,使用SQL时会到处遭遇困难和陷阱。只有深入理解关系理论,并将理论应用于实践,才能避免这些困难和陷阱。本书作者深入阐述了关系理论,以严谨的态度对SQL与关系理论进行详尽而深入的对比、讨论和思考,并且使用大量示例和练习展示怎样才能将关系理论正确地应用到SQL中,得到健壮的SQL代码,为高级数据库开发人员提供大量常见SQL问题的解决之道。

本书回答了如下问题:
· 为什么恰当的列命名非常重要?
· 数据库中的null会让你得到错误的答案。为什么?你又能做什么?
· 是否可以通过编写一个SQL查询找到在同一个部门每次任职都不足6个月的员工?
· 虽然SQL支持“量化比较”,但是最好不要使用。为什么?怎样避免使用?
· 虽然约束至关重要,但大多数SQL产品都没有恰当地对其提供支持。怎样解决此种境况?

关系模型是在40多年前提出的,自那以后,数据库理论和实践一直在发展,本书作者利用数十年的研究给出了最新的SQL理论。
  1. 第1版前言 
  2. 第2版前言 
  3. 第1章 做好准备 
  4. 1.1 关系模型被严重地误解了 
  5. 1.2 关于术语的一些说明 
  6. 1.3 原理而非产品
  7. 1.4 原始模型回顾
  8. 1.5 模型vs.实现
  9. 1.6 关系的性质
  10. 1.7 基关系vs.导出关系
  11. 1.8 关系vs.关系变量
  12. 1.9 值vs.变量
  13. 1.10 小结
  14. 1.11 练习题
  15. 第2章 类型和域
  16. 2.1 类型和关系
  17. 2.2 相等性比较
  18. 2.3 数据值原子性
  19. 2.4 类型是什么
  20. 2.5 标量类型vs.非标量类型
  21. 2.6 sql中的标量类型
  22. 2.7 sql中的类型检查和型转
  23. 2.8 sql中的字符序
  24. 2.9 sql中的行类型和表类型
  25. 2.10 小结
  26. 2.11 练习题
  27. 第3章 元组、关系、行、表
  28. 3.1 元组是什么
  29. 3.2 sql中的行
  30. 3.3 关系是什么
  31. 3.4 关系及其主体
  32. 3.5 关系是n维的
  33. 3.6 关系比较
  34. 3.7 table_dum和table_dee
  35. 3.8 sql中的表
  36. 3.9 sql中的列命名
  37. 3.10 小结
  38. 3.11 练习题
  39. 第4章 不要重复,不要null
  40. 4.1 重复有什么问题
  41. 4.2 重复:深入讨论
  42. 4.3 在sql中避免重复
  43. 4.4 null有什么毛病
  44. 4.5 在sql中避免null
  45. 4.6 对外连接的说明
  46. 4.7 小结
  47. 4.8 练习题
  48. 第5章 基关系变量和基表
  49. 5.1 更新是集合级别的
  50. 5.2 关系赋值
  51. 5.3 关于候选键的更多内容
  52. 5.4 关于外键的更多内容
  53. 5.5 关系变量和谓词
  54. 5.6 关系 vs. 类型
  55. 5.7 练习题
  56. 第6章 sql和关系代数i:原始运算符
  57. 6.1 一些预备知识
  58. 6.2 关于闭包的更多内容
  59. 6.3 限制
  60. 6.4 投影
  61. 6.5 连接
  62. 6.6 并、交和差
  63. 6.7 哪些运算符是基本运算符
  64. 6.8 逐步形成表达式
  65. 6.9 关系表达式到底表示什么
  66. 6.10 计算sql表表达式
  67. 6.11 表达式变换
  68. 6.12 属性名依赖
  69. 6.13 练习题
  70. 第7章 sql和关系代数ii:附加运算符
  71. 7.1 排他并
  72. 7.2 半连接和半差
  73. 7.3 扩展
  74. 7.4 映像关系
  75. 7.5 除
  76. 7.6 聚集运算符
  77. 7.7 再议映像关系
  78. 7.8 汇总
  79. 7.9 再议汇总
  80. 7.10 分组、去分组和关系值属性
  81. 7.11“what if”查询
  82. 7.12 对于递归的说明
  83. 7.13 order by是怎么回事
  84. 7.13 练习题
  85. 第8章 sql与约束
  86. 8.1 类型约束
  87. 8.2 sql中的类型约束
  88. 8.3 数据库约束
  89. 8.4 sql中的数据库约束
  90. 8.5 事务
  91. 8.6 数据库约束为什么必须立即检查
  92. 8.7 不是有些检查必须延迟进行吗
  93. 8.8 约束与谓词
  94. 8.9 各种问题
  95. 8.10 练习题
  96. 第9章 sql与视图
  97. 9.1 视图是关系变量
  98. 9.2 视图和谓词
  99. 9.3 检索运算
  100. 9.4 视图和约束
  101. 9.5 更新运算
  102. 9.6 视图的作用
  103. 9.7 视图和快照
  104. 9.8 练习题
  105. 第10章 sql与逻辑
  106. 10.1 为什么需要逻辑
  107. 10.2 简单命题和复合命题
  108. 10.3 简单谓词和复合谓词
  109. 10.4 量词化
  110. 10.5 关系演算
  111. 10.6 关于量词化的更多内容
  112. 10.7 一些等价关系
  113. 10.8 小结
  114. 10.9 练习题
  115. 第11章 使用逻辑表述sql表达式
  116. 11.1 一些变换法则
  117. 11.2 例1:逻辑蕴涵
  118. 11.3 例2:全称量词化
  119. 11.4 例3:蕴涵和全称量词化
  120. 11.5 例4:相关子查询
  121. 11.6 例5:命名子表达式
  122. 11.7 例6:关于命名子表达式的更多内容 
  123. 11.8 例7:处理模糊性
  124. 11.9 例8:使用count
  125. 11.10 例9:连接查询
  126. 11.11 例10:唯一量词化
  127. 11.12 例11:all或any比较
  128. 11.13 例12:group by和having 
  129. 11.14 练习题
  130. 第12章 关于sql的其他主题
  131. 12.1 select *
  132. 12.2 显式表
  133. 12.3 名称限定
  134. 12.4 区间变元
  135. 12.5 子查询
  136. 12.6 “可能非确定性”表达式
  137. 12.7 空集合
  138. 12.8 简化的bnf语法
  139. 12.9 练习题
  140. 附录a 关系模型
  141. 附录b sql背离关系模型之处
  142. 附录c 处理信息丢失的关系方法
  143. 附录d tutorial d语法
  144. 附录e 本书建议汇总
  145. 附录f 练习答案
  146. 附录g 深入阅读建议
书名:SQL与关系数据库理论(第2版)
作者:C. J. Date
译者:单世民, 何英昊, 许侃 译
国内出版社:机械工业出版社
出版时间:2014年07月
页数:416
书号:978-7-111-46154-8
原版书书名:SQL and Relational, Second edition
原版书出版商:O'Reilly Media
C. J. Date
 
C. J. Date在数据库领域具有独一无二的声誉。因为他具备以一种清晰、易于理解的方式来解释复杂技术问题的能力。他在O’Reilly出版的图书包括SQL and Relational Theory(2nd Edition)、Database Design and Relational Theory、View Updating and Relational Theory等。本书作为对以往这些书籍的导论。