书刊介绍
《大话数据库》内容简介
本书是一本独特的数据库入门书,以最有效的教学思路讲解数据库的每一个知识点,完全以初学者的思维方式提出疑问再深入答疑。这也许不是一本传统的教科书,但绝对是自学数据库的首选书籍。本书采用【老田、小天】二人对话的形式讲解,其中不乏诙谐幽默的问题和解答,避免对知识点生搬硬套。
通过学习本书,你能够在嬉笑怒骂的环境中轻松掌握数据存储原理、数据库设计技巧以及大量数据库编程的实战经验,更重要的是能够掌握一种优秀的学习方法、决问题的思路和思考的方式。这些经验和技巧得益于我和邹老师两人加起来近25年的项目开发和教育培训经历。
本书第一部分对于数据库的创建、备份、配置、安全等做详细介绍,通过这部分学习,可以掌握关系数据库的基础,以及对数据库的日常维护操作;本书第二部分对于分析项目需求,创建表,然后使用T-SQL语句和存储过程对表中数据做各种操作等做详细讲解,通过这一部分的学习,可以掌握对数据库的基本应用,熟练使用T-SQL语言建库、建表、T-SQL查询、高级检索、存储过程、性能优化技巧等; 读者对象:希望靠一本书从头到尾自学的零基础学员;培训讲师的备课资料,因为这本书总结了我们培训过程所遇到的问题和学生会问的问题、有疑虑的地方;自觉性不高的学员。
田洪川,2010年获得中电科三十集团下属国信安投资,创办学云网,2007年进入成都国信安,完成本科授课、社招培训班授课、企业培训授课、实训授课千余次,2002年进入绵阳新潮集团,从程序员一直干到技术总监(期间换过公司),1999年开始守网吧,自学编程,1996年初中毕业:卖馒头、端盘子洗碗、小混混、搞传销。
邹茂杨,从业13年,一直从事数据库开发与教学研究。任职于成都信息工程学院之前,曾经在成都微软技术中心等多家公司工作。主持或参与过国家级科研项目2项,省级科研项目1项,市区级科研项目3项,校级科研项目1项,参与商业项目和产品的研发推广数十项。研究教学规律、负责教改工作2项。2011年作为访问学者在美国TROY大学访问半年。作品目录
大话数据库
前言
第一部分
关系型数据库基础
第1章:概
述
1.1、什么是数据库
1.2、为什么要使用数据库
1.3、数据库的基本概念
1.4、数据库的历史
1.5、关系数据库
1.6、为什么选择SQL
Server
1.7、SQL语言
1.8、SQL标准
1.9、10分钟探索IDE
1.9.1、启动和登录SQL
Server
Management
Studio
1.9.2、修改登录验证模式
1.9.3、注册数据库服务器
1.9.4、修改数据库服务器属性
1.9.5、启动和停止服务器
1.9.6、创建查询
1.9.7、使用指定数据库
本
章:小
结
问
题
第2章:创建和维护数据库
2.1、系统数据库
2.1.1、修改系统数据
2.1.2、查看系统数据
2.2、创建数据库
2.2.1、使用Transact-SQL语句创建数据库
2.2.2、查看数据库文件属性
2.3、数据库文件和文件组
2.3.1、数据库文件的类型
2.3.2、文件组
2.3.3、删除数据库文件
2.3.4、管理文件组
2.3.5、文件组的填充策略
2.3.6、优化数据库的策略
2.3.7、文件状态
2.4、数据库状态和选项
2.5、查看数据库
2.6、删除数据库
2.7、修改数据库
2.7.1、修改数据库名称
2.7.2、扩展数据库
2.7.3、收缩数据库
2.8、数据库快照
2.8.1、数据库快照的应用
2.8.2、数据库快照的原理
2.8.3、管理数据库快照
2.9、分离和附加数据库
2.9.1、分离数据库
2.9.2、附加数据库
2.10、移动数据库文件
2.11、移动和复制数据库
2.12、备份和还原数据库
2.12.1、备份数据库
2.12.2、还原数据库
本
章:小
结
问
题
第二部分
设计、实现和使用数据库
第3章:Transact-SQL语言
3.1、SQL与Transact-SQL语言概述方式
3.2、Transact-SQL语言的执行方式与调试
3.2.1、调试代码
3.2.2、调试Transact-SQL代码
3.3、数据定义语言(DDL)
3.4、数据操纵语言(DML)
3.5、数据库控制语言(DCL)
3.6、附加的语言元素
3.6.1、标识符和命名规范
3.6.2、局部变量
3.6.3、全局变量
3.6.4、运算符
3.6.5、表达式
3.6.6、注释
3.7、数
据
类
型
3.7.1、字符数据类型
3.7.2、数字数据类型
3.7.3、日期和时间数据类型
3.7.4、二进制数据类型
3.7.5、其他数据类型
3.7.6、用户自定义数据类型
3.8、内
置
函
数
3.8.1、概述
3.8.2、如何查看SQL
Server帮助中的语法
3.8.3、如何使用函数
3.8.4、函数类型
本
章:小
结
问
题
第4章:创建与维护表
4.1、概
述
4.2、设计表时应该考虑的因素
4.3、E-R模型
4.3.1、概述
4.3.2、属性和主键
4.3.3、外键
4.3.4、联系
4.3.5、关系规范化
4.4、利用PowerDesigner设计数据库
4.4.1、PowerDesigner说明和模型设置
4.4.2、创建概念数据模型实体
4.4.3、创建概念数据模型关系
4.4.4、从概念数据模型到生成物理数据模型
4.4.5、创建物理数据模型
4.4.6、更新已有的物理数据模型
4.4.7、生成数据库脚本
4.5、表的基本特点和类型
4.5.1、表的特点
4.5.2、表的类型
4.6、创建和修改表
4.6.1、创建普通表
4.6.2、创建临时表
4.6.3、创建分区表
4.6.4、增加和删除列
4.6.5、修改列
4.6.6、创建和修改列标识符
4.6.7、查看表信息
4.6.8、删除表
4.7、约
束
4.7.1、主键约束
4.7.2、外键约束
4.7.3、NOT
NULL约束
4.7.4、DEFAULT约束
4.7.5、CHECK约束
4.7.6、UNIQUE约束
4.7.7、禁止与删除约束
本
章:小
结
问
题
第5章:操作表中的数据
5.1、准
备
工
作
5.2、插
入
语
句
5.2.1、简单的插入语句
5.2.2、批量插入语句
5.3、检
索
数
据
5.3.1、选择数据列
5.3.2、使用文字串
5.3.3、改变列标题
5.3.4、数据运算
5.3.5、使用ALL与DISTINCT关键字
5.3.6、使用TOP关键字
5.3.7、排序
5.4、WHERE子句
5.4.1、简单条件查询
5.4.2、模糊查询
5.4.3、复合条件查询
5.4.4、使用IN子句
5.4.5、使用BETWEEN子句
5.4.6、空值与非空值
5.5、修
改
语
句
5.6、删
除
语
句
本
章:小
结
问
题
第6章:高级检索技术
6.1、聚
合
技
术
6.1.1、SELECT子句中的聚合
6.1.2、COMPUTE子句中的聚合
6.2、分
组
数
据
6.2.1、普通分组
6.2.2、使用HAVING子句
6.2.3、使用ROLLUP和CUBE
6.3、联
合
查
询
6.4、连
接
查
询
6.4.1、内连接
6.4.2、外连接
6.4.3、交叉连接
6.4.4、自连接
6.5、子查询技术
6.5.1、使用
IN和NOT
IN
的子查询
6.5.2、ANY、ALL等比较运算符的使用
6.5.3、使用EXISTS关键字
6.5.4、子查询的规则
本
章:小
结
问
题
阶
段
作
业
第7章:索
引
7.1、概
述
7.1.1、表组织
7.1.2、堆
7.1.3、B树
7.2、索引的优缺点
7.3、索引的类型
7.3.1、聚集索引
7.3.2、非聚集索引
7.4、索引的属性
7.4.1、唯一性索引
7.4.2、复合索引
7.5、创
建
索
引
7.5.1、使用向导创建索引
7.5.2、使用CREATE
INDEX语句创建索引
7.5.3、索引的选项
7.6、维
护
索
引
7.6.1、查看索引碎片
7.6.2、重建索引
7.6.3、统计信息
7.6.4、查看索引
7.6.5、修改索引
7.6.6、删除索引
本
章:小
结
问
题
第8章:视
图
8.1、概
述
8.1.1、为什么需要视图
8.1.2、什么是视图
8.2、视图的优缺点
8.3、创
建
视
图
8.3.1、创建视图的基本原则
8.3.2、使用SQL
Server
Management
Studio创建视图
8.3.3、使用Transact-SQL
命令创建视图
8.4、使
用
视
图
8.5、查
看
视
图
8.6、加
密
视
图
8.7、修
改
视
图
8.8、删
除
视
图
8.9、重命名视图
8.10、通过视图更新数据
8.10.1、通过视图插入数据
8.10.2、使用UPDATE修改数据
本
章:小
结
问
题
第9章:SQL编程及高级应用
9.1、概
述
9.2、流程控制语句
9.2.1、IF…ELSE…语句
9.2.2、BEGIN…END语句
9.2.3、GOTO语句
9.2.4、WHILE
BREAK和CONTINUE语句
9.2.5、CASE语句
9.2.6、WAITFOR语句
9.3、游
标
9.3.1、游标的类型
9.3.2、选择游标类型的原则
9.3.3、游标的生命周期
9.3.4、实现Transact-SQL游标
9.4、用户自定义函数
9.4.1、创建用户自定义函数的思考
9.4.2、用户自定义函数的分类
9.4.3、创建及使用用户自定义函数
9.4.4、维护用户自定义函数
本
章:小
结
问
题
第10章:存
储
过
程
10.1、概
述
10.2、存储过程的优点
10.3、存储过程的分类
10.3.1、系统存储过程
10.3.2、API存储过程
10.3.3、用户自定义存储过程
10.4、创建存储过程
10.4.1、创建存储过程应考虑的因素
10.4.2、创建存储过程的语法
10.4.3、创建不带参数的存储过程
10.4.4、创建带参数的存储过程
10.4.5、创建返回值的存储过程
10.4.6、创建带有OUTPUT参数的存储过程
10.4.7、使用SQL
Server
Management
Studio创建存储过程
10.5、维护存储过程
10.5.1、查看存储过程信息
10.5.2、加密存储过程
10.5.3、修改、删除存储过程
10.6、存储过程进阶知识
10.6.1、存储过程的执行过程
10.6.2、存储过程命名
本
章:小
结
问
题
第11章:触
发
器
11.1、概
述
11.1.1、触发器与约束规则
11.1.2、触发器的优缺点
11.2、触发器的分类
11.2.1、DDL触发器
11.2.2、登录触发器
11.2.3、DML触发器
11.3、创建触发器
11.3.1、创建DDL触发器
11.3.2、可触发DDL触发器的事件
11.3.3、维护触发器
11.4、创建DML触发器
11.4.1、创建DML触发器的语法
11.4.2、创建DML触发器需要考虑的因素
11.4.3、创建DML触发器
11.5、DML触发器嵌套
本
章:小
结
问
题
第12章:事
务
和
锁
12.1、事
务
概
述
12.1.1、概念
12.1.2、属性
12.2、创
建
事
务
12.2.1、使用事务考虑的因素
12.2.2、事务的声明和提交
12.2.3、事务的回滚
12.2.4、查看当前执行中的事务
12.2.5、事务的嵌套
12.3、事务的工作原理
12.4、锁定和行版本控制
12.5、锁定的分类
12.6、锁的自动优化
12.6.1、升级阈值
12.7、死
锁
12.7.1、死锁的概念
12.7.2、产生死锁的主要原因和必要条件
12.7.3、减少和预防死锁
12.7.4、检测死锁
12.7.5、设置锁的优先级
本
章:小
结
问
题
第13章:全
文
索
引
13.1、概
述
13.2、全文索引概念
13.2.1、全文索引与查询
13.2.2、全文索引引擎
13.3、全
文
目
录
13.3.1、创建全文目录
13.3.2、修改全文目录
13.3.3、查看全文目录
13.4、管理全文索引
13.4.1、创建全文索引需要考虑的因素
13.4.2、创建全文索引
13.4.3、查看全文索引
13.4.4、修改和删除全文索引
13.4.5、填充全文索引
13.5、使用全文索引
13.5.1、使用全文谓词CONTAINS和FREETEXT查询概述
13.5.2、使用CONTAINS谓词的简单搜索
13.5.3、使用CONTAINS谓词的派生词搜索
13.5.4、使用CONTAINS谓词的前缀词搜索
13.5.5、使用CONTAINS谓词的邻近词搜索
13.5.6、使用CONTAINS谓词的加权词搜索
13.5.7、使用FREETEXT查询
13.5.8、使用CONTAINSTABLE函数搜索
13.5.9、使用FREETEXTTABLE函数搜索
13.6、检索二进制列
本
章:小
结
问
题
结
束
语