
基本信息出版社:清华大学出版社
页码:671 页
出版日期:2010年01月
ISBN:9787302214182
条形码:9787302214182
版本:第1版
装帧:平装
开本:16
正文语种:中文
内容简介 《T-SQL技术开发实用大全:基于SQL Server 2005/2008》全面而系统地介绍了Transact-SQL的基本知识、SQL Server数据库的基本管理以及Transact-SQL的高级编程技术,同时还介绍了在几种流行编程语言和工具中使用Transact-SQL开发数据库应用的关键技术。《T-SQL技术开发实用大全:基于SQL Server 2005/2008》几乎涉及Transact-SQL技术的全部内容,是笔者近十年编程经验的积累。
全书内容丰富、实例详尽、可操作性强,同时又简单易学、方便查找,并配有DVD光盘1张,内含所有实例源代码以及有关内容的视频教材,既适合于Transact-SQL初学者、也适合于有SQL Server数据库编程经验的开发人员、数据库系统管理员、分析员、测试员,同时也适合于SQL/Transact-SQL研究人员、高校计算机及相关专业的学生和教师等。它不但是一本理想的教材,也可作为有编程开发经验人员的技术速查手册。
作者简介 蒙祖强,北京中国科学院计算技术研究所博士后;广西大学计算机与电子信息学院教授。
编辑推荐 《T-SQL技术开发实用大全:基于SQL Server 2005/2008》:
内容丰富、实例详尽
数据库开发专家
全面、多角度、翔实的SQL查询方法
随书光盘包含100%的实例源代码和关键技术的视频教程,提供良好的资源导航方法
1DVD 317分钟 多媒体视频 讲解教程
基于T-SQL管理和应用数据库对象的全套技术
基于T-SQL的数据并发性、完整性、安全性控制技术
基于T-SQL备份与恢复数据库的彻底解决方案
基于当前流行开发工具和T-SQL的数据库开发核心技术
经典的T-SQ函数应用
SQL Server版本不断升级,但T-SQL却是永恒的。《T-SQL技术开发实用大全:基于SQL Server 2005/2008》几乎囊括Transact-SQL的所有技术与应用,是一本实用、前沿的T-SQL教材,也是专业数据库开发人员、系统分析员、测试员的技术词典和参考书《T-SQL技术开发实用大全:基于SQL Server 2005/2008》历时两年编写,融合了作者多年的数据库教学和多种大、中型项目的
开发经验,以及对T-SQL应用和研究的深切体会。
第1部分:系统、全面、多角度的讲述SQL查询方法,T-SQL程序设计技术及T-SQL函数应用和开发方法。
第2部分:使用T-SQL管理数据库对象的技术和方法,包括数据库、数据表、索引和视图的创建、修改、删除以及相关信息的查看方法,数据表的高级查询,结果集的集合运算,MERGE运算,分区视图的应用等。
第3部分:T-SQL的高级编程部分,包括游标、存储过程、触发器的开发与应用,事务并发性、数据的完整性和安全性控制,数据库备份与恢复技术以及错误处理技术等。
第4部分:使用C#、ASP、ASP.NET、VB.NET、VB 6.O、VC++6.0、C++Builder 6、JSP开发工具,编写T-SQL数据库应用程序开发的核心技术
目录
第1章 数据库系统与Transact—SQL
1.1 数据库系统
1.1.1 数据库系统的组成
1.1.2 关系数据库
1.1.3 数据库管理系统
1.2 Transact-SQL概述
1.2.1 SQL与Transact-SQL
1.2.2 Transact-SQL的组成
1.3 Transact-SQL开发环境
1.3.1 Transact-SQL的执行方式
1.3.2 使用SSMS开发Transact-SQL
1.4 初识Transact-SQL
1.4.1 Transact-SQL标识符和对象引用方法
1.4.2 Transact-SQL的语法约定
1.4.3 批处理
1.5 本章小结
第2章 SQL语言基础
2.1 SQL语言的数据类型
2.1.1 字符串型
2.1.2 数值型
2.1.3 日期时间型
2.1.4 货币型
2.1.5 二进制型
2.1.6 其他数据类型
2.1.7 自定义数据类型
2.2 示例数据表
2.2.1 创建示例数据表——CREATETABLE
2.2.2 显示示例数据表的结构信息
2.2.3 向示例数据表添加数据——INSERT
2.2.4 查询示例数据表中的数据——SELECT
2.2.5 删除示例数据表——DROPTABLE
2.3 SQL的数据查询功能
2.3.1 仅带FROM子句的SELECT语句
2.3.2 避免重复记录的查询——带DISTINCT
2.3.3 查询前n条记录——带TOP
2.3.4 条件查询——WHERE子句
2.3.5 范围查询——使用BEFWEEN
2.3.6 范围查询——使用IN
2.3.7 模糊查询——使用LIKE
2.3.8 空值查询——使用IS
2.3.9 排序查询——使用ORDERBY
2.3.10 分组查询——使用GROUPBY和HAVING
2.4 本章小结
第3章 Transact-SQL语法
3.1 Transact-SQL的变量和常量
3.1.1 全局变量的引用
3.1.2 局部变量的定义和引用
3.1 -3Transact-SQL常量
3.2 Transact-SQL运算符
3.2.1 算术运算符
3.2.2 比较运算符
3.2.3 逻辑运算符
3.2.4 赋值运算符
3.2.5 字符串连接运算符
3.2.6 位运算符
3.2.7 运算符的优先级
3.3 Transact-SQL流程控制
3.3.1 语句块
3.3.2 IF语句
3.3.3 CASE结构
3.3.4 WHILE语句(含BREAK、CONTINUE)
3.3.5 GOTO语句
3.3.6 TRYCATCH语句
3.3.7 RETURN语句
3.3.8 WAITFOR语句
3.4 本章小结
第4章 Transact-SQL函数应用
4.1 字符串处理函数
4.1.1 ASCII()函数
4.1.2 SUBSTRING()函数
4.1.3 LEFT()函数
4.1.4 REPLACE()函数
4.1.5 UPPER()函数
4.1.6 STR()函数
4.1.7 LEN()函数
4.1.8 REVERSE()函数
4.1.9 字符串处理函数一览表
4.2 聚合函数与聚合分析
4.2.1 聚合分析的概念
4.2.2 计数函数——COUNT()
4.2.3 求和函数——SUM()
4.2.4 均值函数——AvG()
4.2.5 最大/最小函数——MAX()/MIN()
4.2.6 标准差/总体标准差函数——STDEV()/STDEVP()
4.2.7 方差函数——VAR()/VARP()
4.3 日期时间函数
4.3.1 获取当前日期时间——GetDate()和GetUtcDate()
4.3.2 提取日期时间量的成分——Year()、Month()、Day()、DatePart()
4.3.3 提取日期成分的字符串——DateName()
4.3.4 日期时间的增加和减少运算——DateAdd()
4.3.5 获取日期时间的间隔——DateDiff()
4.3.6 常用日期时间函数一览表
4.3.7 类型转换函数及日期数据显示——CONVERT()和CAST()
4.4 数学函数
4.5 系统函数
4.5.1 获取服务器名和ID——HOST.NAME()、HOST-ID()
4.5.2 获取数据库的名称和ID——DB—NAME()、DBjD()
4.5.3 获取应用程序名——APP-NAME()
4.5.4 获取数据库用户名和ID——USEIL.NAME()、USER.ID()
4.5.5 获取安全标识号(SID)——SUSER—SID()
4.5.6 获取数据库对象的名称和ID——ObjecLName()、OBJECT.ID()
4.5.7 获取登录名——SUSER—SNAME()
4.5.8 获取架构名称——OBJECT.SCHEMA.NAME()
4.5.9 获取数据的长度——DATALENGTH()
4.5.10 获取字段的定义长度——COL.LENGTH()
4.5.11 获取字段的名称——COL-NAME()
4.5.12 添加标识字段———IDENTTY()
4.5.13 对行编号——.ROWNUMBER()
4.5.14 日期和数值类型型判别函数——ISDATE()、ISN7UMERIC()
4.5.15 空值替换函数——ISNULL()
4.6 用户自定义函数
4.6.1 标量函数的定义和引用
4.6.2 内联表值函数
4.6.3 多语句表值函数
4.6.4 删除自定义函数
……
4.7 本章小结
第5章 SQL Server数据库管理
5.1数据库文件
5.2 SQL Server 2008系统数据库
5.3 创建数据库——CREATEDATABASE
5.4 查看数据库
5.5 修改数据库——ALTERDATABASE
5.6 删除数据库——DROPDATABASE
5.7 查看数据库对象
5.8 本章小结
第6章 SQL Server数据表管理
6.1 数据表的分类
6.2 创建数据表——CREATETABLE
6.3 修改数据表——ALTER TABLE
6.4 插入数据——INSERT
6.5 更新数据——UPDATE
6.6 删除表中的数据——DELETE
6.7 查看和删除数据表
6.8 获取DML语句的影响信息——OUTPUT
6.9 本章小结
第7章 SQL高级查询
7.1 本章使用的示例表
7.2 关于多表连接查询
7.3 交叉连接查询
7.4 内连接查询——INNER JOIN
7.5 外连接查询——OUTER JOIN
7.6 嵌套查询
7.7 结果集的集合运算
7.8 MERGE运算:一种功能更强的集合运算
7.9 本章小结
第8章 SQL Server索引管理
8.1 索引概述
8.2 索引的类型
8.3 创建索引——CREATE INDEX
8.4 查看索引
8.5 修改索引———ALTER INDEX
8.6 删除索引——DROP INDEX
8.7 本章小结
第9章 SQL Server视图管理
9.1 视图
9.2 创建视图——CREATE VIEW
9.3 查看视图的相关信息
9.4 修改和刷新视图
9.5 视图数据的更新
9.6 索引视图的创建及其运用
9.7 (分布式)分区视图的创建及其运用
9.8 删除视图——DROP VIEW
9.9 本章小结
第10章 游标的实现与管理
10.1 游标概述
10.2 创建游标——DECLARECURSOR
10.3 打开游标——OPEN
10.4 检索游标数据——FETCH
10.5 更新游标数据
10.6 查看游标属性
10.7 关闭和删除游标
10.8 本章小结
第11章 存储过程的开发与应用
11.1 关于存储过程
11.2 存储过程的创建与执行——CREATE PROC
11.3 查看存储过程的属性信息
11.4 修改存储过程——ALTER PROC
11.5 删除存储过程——DROP PROC
11.6 本章小结
第12章 触发器的开发与应用
12.1 关于触发器
12.2 DML触发器的创建和激发
12.3 DDL触发器的创建和激发
12.4 LOGON触发器的创建和激发
12.5 触发器的嵌套与递归
12.6 查看触发器的属性信息
12.7 管理触发器
12.8 本章小结
第13章 事务控制与并发处理
13.1 关于事务
13.2 事务的控制
13.3 并发控制
13.4 本章小结
第14章 数据的完整性控制
14.1 数据完整性
14.2 数据完整性的实施方法
14.3 域完整性
14.4 实体完整性
14.5 参照完整性
14.6 用户定义完整性
14.7 约束的管理
14.8 本章小结
第15章 数据的安全性控制
15.1 SQL Server 2008安全体系结构
15.2 服务器级的安全控制
15.3 数据库级的安全控制
15.4 架构级的安全控制
15.5 应用举例
15.6 本章小结
第16章 数据库备份与恢复
16.1 关于备份与恢复
16.2 准备工作
16.3 完整备份———BACKUP DATABASE
16.4 差异备份
16.5 事务日志备份
16.6 部分备份
16.7 仅复制备份
16.8 查看备份集和媒体集
16.9 数据库还原——RESTORE DATABASE
16.10 数据库的分离与附加
16.11 本章小结
第17章 错误处理
17.1 系统错误消息的捕获与处理——TRY…CATCH
17.2 查看错误信息
17.3 管理用户自定义错误消息
17.4 本章小结
第18章 C#+SQL Server的开发技术
18.1 一个简单的C#用程序
18.2 为什么在C#中使用T-SQL
18.3 ADO.NET
18.4 基于视图的数据查询
18.5 基于视图的数据维护与触发器应用
18.6 本章小结
第19章 ASP/ASP.NET+SQL Server的开发技术
19.1 构建ASP开发环境
19.2 数据库连接技术
19.3 在ASP中使用T-SQL操纵数据库
19.4 简单的ASP.NET应用程序
19.5 在ASP.NET中使用T-SQL操纵数据库
19.6 ASP.NET系统发布
19.7 本章小结
第20章 VB.NET/VB 6.0+SQL Server的开发技术
20.1 一个简单的VB.NET应用程序
20.2 在VB.NET中使用T-SQL操纵数据库
20.3 实战训练:基于T-SQL的个人相片管理系统
20.4 VB 6.0访问SQL Server数据库
20.5 本章小结
第21章 VC++6.0+SQL Server的开发技术
21.1 关于VC++6.0
21.2 使用ADO连接数据库
21.3 基于ADO控件开发数据库应用程序
21.4 本章小结
第22章 C++Builder 6+SQL Server的开发技术
22.1 关于C++Builder 6
22.2 C++Builder 6中数据库的连接与查询
22.3 C++Builder 6环境下触发器在数据维护中的应用
22.4 本章小结
第23章 JSP+SQL Server的开发技术
23.1 一个简单的JSP应用程序
23.2 数据库连接技术
23.3 数据查询与分页技术
23.4 JSP中基于T-SQL的数据操作方法
23.5 T-SQL实战训练:开发图书信息管理系统
23.6 本章小结
附录A:本书常用的数据表及测试数据
附录B:常用命令应用简例
参考文献
……
序言 SQL是Ctructured Query Language的缩写,译为“结构化查询语言”,它是目前使用最为广泛的关系数据库语言。它以丰富而强大的操纵功能、简洁的语言形式、灵活的使用方法以及简单易学的特点倍受用户的青睐,目前绝大部分的DBMS产品都支持SQL。
遗憾的是,目前SQL仍然未得到完全的统一,不同的DBMS厂商提供的SQL实现版本仍然不尽相同。因此,在介绍SQL时,最好能够结合具体的DBMS产品,否则就没有太大的实际意义。
Transact-SQL(简写为T-SQL)可以简单理解为SQL与SQLServer的结合。实际上,Transact-SQL是Microsoft公司对5QL进行扩充的结果,是SQL的超集,它支持所有的标准SQL语言操作,包括提供标准SQL的DDL、DCL和DML以及扩展的函数、系统存储过程:Transact-SQL还对SQL进行了许多补允,提供了类似C、Basic和Pascal的基本功能。Microsoft新推出的SQL Server 2008对Transact-SQL语言进行了进一步增强,包括ALTER DATABASE兼容级别设置、复合运算符、表值参数和Transact-SQL行构造函数等。
随着SQL Server 2005/2008的推出,必将掀起新的一轮学习和运用SQL Server的高潮。无论是数据库管理员还是数据库应用程序开发人员,要想深入领会和使用SQL Server,必须掌握Transact-SQL。通过使用Transact-SQL,用户不但可以直接实现对数据库的各种管理操作,而且还可以深入数据库内部,完成各种图形化管理工具所不能完成的管理任务。因此可以这样说,只有深刻理解并熟练使用Transact-SQL,才能算是真正掌握SQL Server。
文摘 插图:

以微软雄厚的技术力量为依托,凭借自己出色的数据管理和分析功能,SQL Server在数据库产品市场中的主导地位仍然坚如磐石。特别是随着SQL Server 2008的推出,进一步加强了SQLServer的这种主导地位,同时也必将掀起新的一轮学习和运用SQL Server的高潮。无论是数据库管理员,还是数据库应用程序开发人员,要想深入领会和掌握SQL Server,必须认真学习Transact-SQL。使用Transact-SQL,用户不但可以直接实现对数据库的各种管理,而且还可以深入数据库系统内部,完成各种图形化管理工具所不能完成的管理任务。因此可以这样说,只有深刻理解并熟练使用Transact-SQL,才算是真正掌握SQL Server。
本章先介绍数据库系统涉及的一些基本概念,然后简要介绍SQL,和Transact-SQL语言,以及它们之间的关系,最后介绍Transact-SQL开发环境及批处理等相关概念,为后续章节学习做准备。
数据库技术的出现是数据管理发展史上的一次质的飞跃。以数据库技术为中心的计算机系统就是所谓的数据库系统,也称计算机应用系统。数据库系统的主要目的是处理生产和实践过程中产生的信息,实现生产过程管理的自动化和信息化,提高信息管理效率。