第一图书网

脑动力

王伟东 电子工业出版社
出版时间:

2012-9  

出版社:

电子工业出版社  

作者:

王伟东  

内容概要

本书内容全面、结构清晰、查询方便,不仅全面地介绍了SQL语句,而且兼顾了其在SQL
Server和Oracle数据库产品中的实现。
本书共15章,分别介绍了SQL数据类型、数据表、视图、约束、SQL函数、SQL查询、数据处理、数据安全、存储过程、触发器、游标和嵌入式SQL等知识点,同时每个知识点都配合了详细、丰富的示例进行讲解,使读者可以很轻松地学习本书内容。

书籍目录

第1章 数据库系统与SQL 基础知识1
1.1 数据库系统基本概念1
1.1.1 什么是SQL1
1.1.2 什么是数据库2
1.1.3 什么是数据库管理系统2
1.2 SQL基础知识3
1.2.1 SQL类型3
1.2.2 在SQL Server中执行SQL语句4
1.2.3 在Oracle中执行SQL语句5
1.2.4 在PL/SQL Developer工具中执行SQL语句6
1.2.5 在MySQL中执行SQL语句8
第2章 SQL中的数据类型和运算符10
2.1 数值类型10
2.2 字符串类型11
2.2.1 可变长度的字符串类型——Varchar、Text12
2.2.2 固定长度的字符串类型——Char12
2.3 日期类型12
2.4 大对象数据类型——BLOB14
2.5 布尔值——Boolean15
2.6 自定义数据类型15
2.7 运算符17
2.7.1 算术运算符17
2.7.2 逻辑运算符20
2.7.3 NOT运算符26
2.7.4 IN的使用29
2.7.5 NOT IN运算符30
第3章 表和视图的创建修改32
3.1 创建数据表——CREATE TABLE32
3.1.1 设计实例表32
3.1.2 创建数据表34
3.2 修改数据表——ALTER TABLE36
3.2.1 为数据表添加列38
3.2.2 修改列的数据类型39
3.2.3 修改列的长度40
3.2.4 设置或取消非空约束41
3.2.5 删除列42
3.3 删除数据表—DROP TABLE43
3.4 创建视图——CREATE VIEW44
3.4.1 视图概述45
3.4.2 创建视图的语句结构47
3.4.3 从一个表创建视图48
3.4.4 从多个表创建视图50
3.4.5 从视图创建视图51
3.4.6 创建视图列的别名52
3.5 修改视图——ALTER VIEW54
3.6 通过视图维护数据56
3.6.1 向视图中插入记录56
3.6.2 通过视图更新数据58
3.6.3 通过视图删除数据59
3.7 删除视图——DROP VIEW60
第4章 约束与规则61
4.1 主键约束——PRIMARY KEY61
4.1.1 在创建表时设置单一列的主键约束61
4.1.2 在创建表时设置联合主键64
4.1.3 在修改表时添加单一列的主键约束65
4.1.4 在修改表时添加联合主键67
4.1.5 删除主键约束67
4.2 唯一约束——UNIQUE68
4.2.1 在创建表时设置一列的唯一约束68
4.2.2 在创建表时为多个列设置唯一约束70
4.2.3 在创建表时为多个列设置共同的唯一约束71
4.2.4 在修改表时添加一个列的唯一约束72
4.2.5 在修改表时添加多个列的共同唯一约束72
4.3 外键约束——FOREIGN KEY73
4.4 非空约束75
4.5 检查约束——CHECK77
4.6 删除和禁用约束79
4.7 规则81
第5章 数据操作84
5.1 查询语句84
5.1.1 查询语句的基本结构84
5.1.2 SELECT...FROM的使用87
5.1.3 WHERE子句的使用88
5.1.4 使用DISTINCT语句删除重复结果信息90
5.1.5 GROUP BY子句的使用92
5.1.6 HAVING子句的使用95
5.1.7 BETWEEN的使用96
5.1.8 模糊查询的实现97
5.2 数据的增加——INSERT103
5.2.1 把数据直接插入表中103
5.2.2 向数据表中添加多行数据107
5.2.3 从其他表中添加数据108
5.2.4 插入NULL值111
5.3 数据的修改——UPDATE113
5.3.1 更新某一列的数据113
5.3.2 按条件更新数据114
5.3.3 更改数据字段中的NULL值116
5.3.4 通过视图更新数据117
5.4 数据的删除——DELETE119
5.4.1 按条件删除数据119
5.4.2 通过视图删除表数据121
5.4.3 删除全部数据122
5.4.4 使用TRUNCATE TABLE语句123
第6章 函数125
6.1 字符串函数125
6.1.1 返回字符串中最左侧字符的ASCII 函数——ASCII125
6.1.2 变换字符串函数——TRANSLATE127
6.1.3 用指定值替代NULL值函数——
COALESCE129
6.1.4 左填充函数——LPAD130
6.1.5 右填充函数——RPAD132
6.1.6 查找字符串所在的位置函数——INSTR134
6.1.7 获取字符串长度的函数——LENGTH135
6.1.8 转换小写字母函数——LOWER136
6.1.9 转换大写字母函数——UPPER138
6.1.10 替换字符串函数——REPLACE139
6.1.11 获取字符串子串函数——SUBSTR141
6.1.12 从左去除字符串中的字符函数——
LTRIM143
6.1.13 从右去除字符串中的字符函数——
RTRIM144
6.1.14 组合字符串函数——CONCAT145
6.1.15 判断是否为空函数——NULLIF147
6.2 日期函数149
6.2.1 获取当前日期的函数——
CURRENT_DATE149
6.2.2 获取当前的日期和时间函数——
CURRENT_ TIMESTAMP、
LOCALTIMESTAMP149
6.3 数学函数151
6.3.1 取绝对值函数——ABS151
6.3.2 余弦函数——COS152
6.3.3 求幂函数——POWER154
6.3.4 四舍五入函数——ROUND155
6.3.5 正弦函数——SIN158
6.3.6 取平方根函数——SQRT函数159
6.3.7 正切函数——TAN160
6.4 类型转换函数——CAST162
6.5 聚合函数163
6.5.1 求平均值函数——AVG163
6.5.2 求个数函数——COUNT165
6.5.3 求最大值函数——MAX166
6.5.4 求最小值函数——MIN168
6.5.5 求和函数——SUM169
6.5.6 聚合函数的组合使用170
6.6 使用CASE值表达式171
第7章 子查询173
7.1 子查询简单应用173
7.1.1 子查询概述173
7.1.2 在多表中使用子查询174
7.1.3 在子查询中使用聚合函数177
7.1.4 使用ANY或ALL运算符179
7.2 使用子查询维护数据181
7.2.1 子查询在INSERT语句中的使用181
7.2.2 子查询在UPDATE语句中的使用182
7.2.3 子查询在DELETE语句中的使用184
7.3 使用IN语句的子查询184
7.3.1 简单的IN语句子查询185
7.3.2 使用IN语句子查询实现集合交运算185
7.3.3 使用IN语句子查询实现集合差运算186
7.4 使用EXISTS语句的子查询187
7.4.1 简单的EXISTS语句子查询187
7.4.2 使用EXISTS语句子查询实现两表交集189
7.4.3 使用EXISTS语句子查询实现两表并集190
7.4.4 使用NOT EXISTS的子查询190
7.5 相关子查询191
7.5.1 使用IN语句子查询引入相关子查询191
7.5.2 在HAVING子句中使用相关子查询192
7.6 UNIQUE子查询194
7.7 嵌套子查询195
第8章 高级查询197
8.1 连接查询197
8.1.1 连接的概念197
8.1.2 内连接199
8.1.3 使用表的别名203
8.1.4 自连接204
8.1.5 自然连接205
8.1.6 左外连接——LEFT OUTER JOIN207
8.1.7 右外连接——RIGHT OUTER JOIN210
8.1.8 全外连接——FULL JOIN211
8.1.9 在外连接中使用聚合函数213
8.2 组合查询215
8.2.1 集合运算基础215
8.2.2 使用UNION组合查询结果216
8.2.3 使用UNION组合多个数据表219
8.2.4 UNION与UNION ALL组合应用220
8.2.5 集合差/集合交运算——
EXCEPT/INTERSECT223
第9章 事务处理228
9.1 事务概述228
9.1.1 事务介绍228
9.1.2 事务控制的必要性229
9.1.3 事务的特性230
9.1.4 事务的状态231

章节摘录

版权页: 插图: 9.1.3 事务的特性 事务是用户对数据库进行的一系列操作的集合。事务具有ATOMIC(原子性)、CONSESTENT(一致性)、ISOLATED(隔离性)和DURABLE(永久性)4个特性,其具体含义如下。 原子性:指事务全有或全无的性质。也就是说,事务是不可分割的操作序列或工作单元,事务由事务管理子系统完成。事务中的所有元素必须作为一个整体提交或回滚。例如,在银行系统中,通过一个事务来更新两个账户余额,如果该事务提交了,则这两个账户的数据就会更新,如果事务在成功更新这两个账户之前终止,则不会更新这两个账户余额,并且会撤销对任何账户余额的修改,如图9.2所示。 一致性:事务中任何数据的变化都必须符合数据定义的规则。当事务完成时,数据必须处于一致状态。事务不能使数据存储处于不稳定的状态,即通过事务对数据所做的修改不能损坏数据。在关系型数据库中,所有的规则必须应用到事务的修改上,以便维护所有数据的完整性。例如,在银行系统中,事务开始前,两个账产余额的总额处于一致的状态,事务进行过程中,一个账产余额改变,另一个账户余额未改变,则这两个账户余额的总额处于不一致状态,当事务完成后,账户余额的总额就恢复为一致的状态。 隔离性:多个事务同时进行,它们之间应该互不干扰。当事务执行修改数据操作时,如果任何其他进程正在同时使用相同的数据,则直到该事务成功提交后,对数据的修改才能生效。 永久性:一旦由事务引发了变化,事务提交以后,所做的工作就被永久保存下来,即使硬件和应用程序发生错误,也必须保证对数据所做的修改不受影响。 9.1.4 事务的状态 一般将事务的执行划分为以下几种状态。 活动状态:事务执行时所处的状态。 部分提交状态:最后一条语句被执行后。 失败状态:发现正常的执行不能继续后。 中止状态:事务回滚并且数据库已被恢复到事务开始执行前的状态后。 提交状态:事务成功完成后。 提交的或中止的事务被称为已经结束的事务。事务执行时,各种状态的关系可表示为图9.3所示。


编辑推荐

《脑动力:SQL语言实务速查效率手册》语言简洁,示例丰富,简单易学,适合各种数据库编程人员,尤其适合SQL的初学者使用,同时也是用于查询SQL知识点的字典书。

图书封面

广告

下载页面


脑动力 PDF格式下载



发货速度很快,学习中


不错的一本书,不足就是书有点小脏,且是擦不掉的那种


还没看呢,感觉不错,应该都是基本


书看了大半,感觉很实用,值得购买。


书很新,包装有点透,虽然没关系,但是建议用不透明的包装。


书很基础,不错。


很实用,值得推荐,大家可以尝试下


初学者,应该有本类似的书。


案头工具书。不错!


比较简单,适合初学者,适合备查。


买了这么多书,好多没来得及看呢


这本书寄来时只用一个胶袋装,非常省成本,导致书运输途中被损坏的质量问题。要求换货,网上查看是一直有货的,可是当当网一直用当地库房没货,连续拒绝我的换货要求,只能退货。请问当地库房没货是购买者需要关心的问题吗?书有质量问题,我提出换货申请,难道不合理吗?投诉电话也打了多次,为什么一直以当地库房没货拒绝我的换货申请?“书有质量问题,当当网不给换货,还投诉无门。”这种售后服务做的太牛B了吧!!!


sql方面的手册比较少,这本对初学者来说蛮实用!


相关图书