SQL实战新手入门

当前位置:首页 > 计算机网络 > 数据库 > SQL实战新手入门

出版社:清华大学出版社
出版日期:2012-6
ISBN:9787302287476
作者:克里格
页数:338页

章节摘录

版权页:   插图:   数据类型还有助于调整数据库的性能。例如,可以用文本来表示无所不在XML数据(关于XML的更多信息,请参见第11章)。毕竟XML本身就是文本。但是,文本的处理对于XML文档结构化的性质来说并不是优化的。除了桌面型RDBMS之外,每一种RDBMS都实现了一种特殊的XML数据类型以解决这一问题。 定义数据类型的另外一个原因在于数据类型可以强制域完整性(将在第3章中详细讨论)。域完整性指的是将某个列强制约束为某种特定数据类型的能力。例如,如果没有DATE数据类型,那么在日期字段中就可能输入October 48这样的日期数据。试图将一个无效的值插入到一个具有数据类型约束的字段中将产生一个错误,例如Microsoft SQL Server的out-of-range datetime value错误。 在可以向关系型数据库输入数据之前,必须将数据分解为各种数据类型的片段,例如字符、数值和图片。客户端应用程序将会重新构造这些信息。 2.2.1 字符数据 首先从字符数据开始介绍,因为当收集、转换和分发信息时,字符是最常处理的数据。 1.固定长度字符串和变长字符串 SQLOO所有的字符串既可以是固定长度的字符串,也可以是变长的字符串。两者的差别非常简单,但是魔鬼常常隐藏在细节之中。 字符串可以定义为一个字符的序列,这些字符属于一个预定义的字符集。字符集是数据库存储的语言。读者可能还会记得,在安装RDBMS的过程中,我们已经指定了排序规则和区域设置(这不包括Oracle log Express,它将根据计算机的设置或者当标准安装选项被选中时的设置来进行定义)。字符串的长度就是字符序列中字符的数量。到目前为止一切正常,只要每一个人都使用英语即可,但在现代社会中情况并非如此。这一问题涉及字符数据在计算机内部的表示方法:比特和字节。可以用一个或多个字节来表示一个字符。绝大多数拉丁语系语言中的字符都可以用一个字节来表示,但其他语言中的字符则需要使用多个字节进行表示。这就带来了问题。 字节是计算机的一个术语,它是一个包含8比特的信息存储单元。每一个比特要么是1,要么是0。8个比特组成一个字节,可用于存储256个不同的值(或者由。至U255代表的256个不同的字符),构成了美国信息交换标准码(ASCII)字符集的基础。由于英语仅包含了26个字母,因此256个字符看起来似乎足够了,但实际上并非如此。我们还需要为大小写字母、标点符号、数字、数学符号、用于换行/回车的不可打印字符等编码。只有非常少的编码空间留给其他基于拉丁字母表的语言所使用的字符(例如法语中的重音符、德语中的元音变音符等),更不用说其他语系的语言了。世界上大约还有3000多种不同的语言,包括消亡的语言和现存的语言。除此之外,还有一些人造语言,例如J.R.R.Tolkien发明的Quenya、Sindarin和Khuzdul语言及其tengwar和cirth文字,或者《星际迷航》中Klingon外星种族的plqaD文字。

内容概要

  Alex Kriegel,俄勒冈州卫生局(Oregon Health
Authority)的企业级系统架构师。他具有20多年专业的软件设计和开发经验,实现并管理企业级RDBMS,同时管理软件开发过程。Alex毕业于白俄罗斯国立技术大学(National
Technical University of
Belarus),具有金属物理学的科学硕士学位。他获得了很多行业证书,包括美国项目管理协会的PMP、开放架构组(Open
Architecture Group)的TOGAF8认证从业人员、Scrum Alliance认证的Scrum
Master,以及Microsoft的微软认证技术专家(Microsoft Certified Technology
Specialist,MCTS)。
  Alex通过www.agilitator.com网站提供在线的培训和咨询服务。
  Alex是MicrosoftSQLServer2000WeekendCrashCourse(Wiley,2001)的作者,也是多本图书的合著者。他参与合著的图书包括:SQL
Bible(Wiley,2003)、SQL Functions(Wrox,2005)、Introduction to Database
Management(Wiley,2007)和SQLBible,2ndEdition(Wiley,2008)。他的图书已被翻译成中文版、葡萄牙文版和俄文版。

书籍目录

第1章 数据库简介
1.1 数据泛滥和信息过载
1.1.1 数据库管理系统
1.1.2 记录数据
1.1.3 关系型数据库管理系统
1.2 SQL简介
1.2.1 SQL标准
1.2.2 SQL的方言
1.2.3 数据库领域的其他角色
1.3 创建数据库
1.3.1 创建表
1.3.2 插入数据:INSERT语句
1.3.3 获取数据:SELECT语句
1.3.4 删除数据:DELETE语句
1.3.5 更新数据:UPDATE语句
1.4 小结
第2章 解构数据:结构化的信息
2.1 数据建模简介
2.1.1 概念建模
2.1.2 逻辑建模
2.1.3 物理建模
2.2 不能将所有数据都定义为文本的原因
2.2.1 字符数据
2.2.2 数值数据
2.2.3 数值字面值
2.2.4 日期和时间数据类型
2.2.5 二进制数据
2.2.6 NULL值
2.2.7 更多数据类型
2.3 DDL、DML和DQL: SQL的组成部分
2.4 重构数据库表
2.4.1 删除表
2.4.2 创建表
2.4.3 修改表
2.5 在表中插入不同类型的数据
2.6 深入研究SELECT语句
2.6.1 选取字面值、函数和计算列
2.6.2 限制纵向选取的列
2.6.3 限制横向选取的行
2.6.4 排序
2.7 深入研究INSERT、LrPDATE或DELETE语句
2.7.1 INSERT语句
2.7.2 UPDATE语句
2.7.3 DELETE语句
2.8 SQL操作符
2.8.1 算术操作符和字符串连接操作符
2.8.2 比较操作符
2.8.3 逻辑操作符
2.8.4 赋值操作符
2.8.5 位操作符
2.8.6 操作符的优先级
2.9 小结
第3章 设计关系型数据库
3.1 再论实体和属性
3.1.1 主键和外键
3.1.2 关系模式
3.1.3 域完整性
3.2 关系型数据库设计基础——规范化
3.2.1 定义约束
3.2.2 根据用途选择数据模型
3.2.3 使用多个表
3.2.4 动态SQL
3.3 小结
第4章 超越SQL的限制
4.1 数值函数
4.2 字符数据处理
4.3 日期和时间函数
4.3.1 获取时间
4.3.2 日期算术运算
4.4 聚合函数简介
4.5 转换函数
4.5.1 在不同数据类型之间执行转换
4.5.2 在不同的字符集之间执行转换
4.6 其他函数
4.7 CASE语句
4.8 SQL过程化扩展
4.8.1 使用存储过程简化文本的解析
4.8.2 用户定义函数(UDF)
4.8.3 使用过程化扩展的原因
4.9 小结
第5章 分组与聚合
5.1 SQL聚合函数
5.1.1 AVG()函数
5.1.2 COUNT()函数
5.1.3 MAX()函数
5.1.4 MIN()函数
5.1.5 SUM()函数
5.2 消除重复的数据
5.3 GROUP BY子句:对数据进行分组
5.3.1 带有HAVING子句的GROUP BY子句
5.3.2 0RDER BY子句:排序输出结果
5.4 小结
第6章 嵌套查询
6.1 子查询
6.1.1 WHERE子句中的子查询
6.1.2 SELECT字段列表中的子查询
6.1.3 FROM子句中的子查询
6.1.4 HAVING子句中的子查询
6.1.5 INSERT语句中的子查询
6.1.6 UPDATE语句中的子查询
6.1.7 DELETE语句中的子查询
6.2 相关子查询
6.3 嵌套子查询
6.4 使用子查询还是JOIN语句
6.5 小结
第7章 组合数据集
7.1 再探JOIN
7.1.1 内联接(INNER JOIN)
7.1.2 N路INNER JOIN
7.1.3 左联接(LEFT OUTER JOIN)
7.1.4 右联接(RIGHT OUTER JOIN)
7.1.5 全联接(FULL JOIN)
7.1.6 自联接:在表内部查找答案
7.1.7 交叉联接(CROSS JOIN)
7.2 UNION
7.3 视图
7.3.1 创建视图
7.3.2 修改视图
7.3.3 删除视图
7.3.4 可更新的视图
7.3.5 分层的视图
7.3.6 优点和缺点
7.4 更多内容
7.4.1 INTERSECT操作符
7.4.2 EXCEPT和MINUS操作符
7.5 小结
第8章 其他SQL概念
第9章 性能优化
第10章 多用户环境
第11章 使用非结构化和半结构数据
第12章 非SQL的世界
附录A 安装Library数据库
附录B 安装RDBMS软件
附录C 访问RDBMS
附录D 使用SQuirreL Universal SQL Client访问RDBMS

编辑推荐

《SQL实战新手入门》从入门知识开始介绍,读者无须具备SQL或关系数据库的预备知识。《SQL实战新手入门》将带领读者走入SQL的发现之旅,读者将亲自创建示例数据库,它不仅结合了《SQL实战新手入门》中所介绍的SQL概念,还将通过几次反复重构引入数据建模、查询调整和优化的概念。《SQL实战新手入门》还介绍了一些适用于每一种SQL的最佳实践。《SQL实战新手入门》适合于准备学习关系数据库程序设计的计算机程序员,也适合那些希望从数据库中释放更强大威力的商业用户。SQL是关系数据库世界的通用语言,每一个对学习SQL这门强大语言感兴趣的人都适合阅读《SQL实战新手入门》。

作者简介

《SQL实战新手入门》介绍了当前的SQL标准以及最重要的几种SQL方言,强调了特定SQL实现之间的差异,介绍了SQL的强大功能和它的局限。演示了SQL如何处理各种类型的数据:结构化数据、非结构化数据以及介于两者之间的数据,介绍了动态SQL、过程化扩展和该领域的最新进展,分享了查询性能优化的最佳实践,介绍了数据库设计的基础知识,介绍了操作规范化数据的工具。

图书封面


 SQL实战新手入门下载



发布书评

 
 


精彩短评 (总计5条)

  •     还没读,不过应该不错,一直很相信盘P2P书籍的质量
  •     书已收到是正版,内容一直没时间看
  •     刚学sql,写得很清晰,让人一看就懂
  •     很喜欢,是一本非常适合新手入门的书籍。
  •     本书的内容的确是比较浅薄的,但新手读起来可能依旧会被里面出现的各种概念弄糊涂了。而且由于本书对多种RDBMS进行了介绍,可能会让人感觉有点乱。对我本人来说,这本书是一个很不错的快速学习指南。从数据概念到数据库规范化,从SQL概念到NoSQL介绍,挺全面的。虽然深入程度不够,但是在有了一个全局观之后,就能很容易找到自己关注或欠缺方面的内容了。
 

外国儿童文学,篆刻,百科,生物科学,科普,初中通用,育儿亲子,美容护肤PDF图书下载,。 零度图书网 

零度图书网 @ 2024