简介
Transact—SQL是SQL Server 2000最基本且重要的组成部分,后台SQL Server数据库中的程序与用户自定义函数都是由Transact—SQL担纲完成。因此如果您不熟悉如何编写Transact—SQL程序代码,就无法构建出一个高效率、功能强大且稳健的系统。
本书通过大量实例,以循序渐进的方式,介绍Transact—SQL,引导读者进入Transact—SQL的知识领域。
书中附有光盘,光盘内附文中所有的范例程序、数据库与数据文件,要顺利使用这些文件,请依下列步骤进行操作:
将光盘中T-sq1文件夹复制到C:\T-sq1中。
将“北风贸易”数据库附加到您的SQL Server中。请注意,如果您的SQL Server已经存在一个名称为“北风贸易”的数据库,这个已存在的数据库会被删除。
您的C盘至少必须有400MB以上的剩余空间。
本书由台湾碁峯资讯股份有限公司提供版权,经中国铁道出版社计算机图书项目中心审选,张瀚文、李自运、张卫、李惠丽、陈贤淑、廖康良、孟丽花等同志完成了本书的整稿及编排工作。
2002年7月
目录
第1章 transact—sql设计工具:sql query analyzer…
1—1 什么是sql query analyzer
1—2 打开sql query analyzer
1—3 查询窗口
1—4 语句颜色与字体设置
1—5 创建新的查询
1—6 编辑查询
l—7 重要操作技巧
1—8 运行查询
1—9 使用模板
1—10 熟练使用对象浏览器
1—11 使用对象搜索功能
结 论
第2章 活用osq1公用程序
2—1 osq1公用程序的使用方式
2—2 osq1公用程序的语法
2—3 运行模式与特殊命令
结 论
第3章 transact—sql程序的基本元素
3—1 transact-sql的组成元素
. 3—2 常量
3—3 字符串常量
3—4 unicode字符串常量
3—5 二进制常量
3—6 bit常量
3—7 日期时间常量
3—8 整数常量
3—9 decimal常量
3—10 float与real常量
3—11 货币值常量
3—12 全球性唯一标识常量
3—13 赋值正数与负数
3—14 常量的使用方式
3—15 局部变量
3—16 table数据类型变量
3—17 运算符
3—18 表达式
3—19 如何为程序加上注释
结 论
第4章 批处理、函数与流程控制命令
4—1 批处理
4—2 函数
4—3 字符串函数
4—4 日期时间函数
4—5 数学函数
4—6 数据类型转换函数
4—7 无参数函数
4—8 流程控制语言
结 论
第5章 动态创建命令语句
5—1 使用execute命令运行命令字符串
5—2 使用系统存储过程sp_exectuesq1运行unicode命令字符串
5—3 成批处理原则
5—4 参数替换功能
结 论
第6章 select查询彻底研究
6—1 select命令语句的语法
6—2 简单的select查询
6—3 设置查询结果的字段名称
6—4 关键字all与distinct的使用
6—5 查询结果的输出目的地
6—6 where参数的条件过滤功能
6—7 select的通用字符
6—8 常量字符与通用字符冲突时的解决之道
6—9 关联条件设置
6—10 统计运算的高手:汇总函数
6—11 数据分组小计
6—12 having参数的使用
6—13 0rder by参数的使用
6—14 查询出名列前茅或垫底者
6—15 活用于查询(subquery)
6—16 自联接(self—joins)
6—17 合并查询结果
6—18 一次查询出各个群组的名列前茅或垫底者
6—19 如何使用compute[by]参数
结 论
第7章 分布式查询
7—1 分布式查询方法一:链接服务器
7—2 使用sp_addlinkedserver创建链接服务器
7—3 使用sql server enterprise manager创建链接服务器
7—4 如何使用openquery()函数
7—5 如何调用远程存储过程
7—6 sp_linkedserver
7—7 sp_dropserver
7—8 sp_tables_ex
7—9 sp_columns_ex
7—10 设置分布式查询的ole db provider配置
7—11 链接服务器的安全性设置
7—12 分布式查询方法二:特定名称
7—13 如何使用openrowset()函数
7—14 如何使用opendatasource()函数
7—15 远程数据与transact—sql命令
7—16 ole db provider的insert需求
7—17 ole db provider的update与delete需求
结 论
第8章 视图(views)
8—1 视图的基本定义与用途
8—2 如何创建视图.
8—3 熟练使用“索引视图”
8—4 活用“分区视图”
8—5 可以更新的分区视图
8—6 通过视图来更新数据
8—7 如何更改视图的名称
8—8 如何更改视图的定义
8—9 如何删除视图
结 论
第9章 如何开发存储过程(stored procedures)
9—1 什么是存储过程,
9—2 存储过程的类型
9—3 存储过程的优点
9—4 如何创建存储过程
9—5 create procedure
9—6 输入参数
9—7 输出参数
9—8 cursor数据类型的输出参数
9—9 嵌套化存储过程
9—10 使用execute命令运行存储过程
9—11 insert..execute
9—12 自动运行存储过程
9—13 更改存储过程的名称
9—14 修改存储过程的定义
9—15 删除存储过程
9—16 重新编译存储过程
结 论
第10章 如何开发自定义函数
10—1 创建自定义函数
10—2 创建标量函数
10—3 创建多重语句表值函数
10—4 创建内嵌表值函数
10—5 如何调用自定义函数
10—6 更改自定义函数的名称
10—7 修改自定义函数的定义
10—8 删除自定义函数
10—9 将数据写入数据表
结 论
第11章 添加、修改与删除数据日志
11—1 使用insert…values
11—2 使用insert…select批处理添加
11—3 添加存储过程的查询结果
11—4 添加自定义函数返回的数据表
11—5 添加查询命令字符串的查询结果
11—6 使用select…into批处理添加
11—7 修改数据日志
11—8 删除数据日志
结 论,
第12章 如何访问text、ntext与image数据
12—1 基本认识
12—2 使用text in row选项
12—3 使用文本指针
12—4 使用textptr()函数获得文本指针
12—5 使用readtext命令读取大型对象数据
12—6 使用writetext命令替换大型对象字段数据
12—7 使用updatetext命令更新大型对象字段
12—8 使用textvalid()函数检查文本指针是否有效
12—9 使用patindex()函数搜索大型文本数据
12—10 如何使用set textsize命令
12—11 获得大型对象数据的长度
结 论
第13章 如何使用bcp与bulk insert完成大量复制操作
13—1 从导入与导出数据谈起
13—2 使用bcp与bulk insert
13—3 活用bcp实用工具
13—4 bcp实用工具实现练习
13—5 活用bulk insert命令
13—6 bulk insert命令实现练习
结 论
第14章 触发器(trigger)
14—1 什么是触发器
14—2 设计触发器
14—3 如何创建触发器
14—4 检查特定的字段是否已被修改
14—5 检查某些字段是否已被修改
14—6 递归触发器
14—7 嵌套触发器
14—8 使用包含rollback transaction命令的触发器
14—9 使用inserted与deleted数据表
14—10 单条与多条数据日志的考虑
14—11 有条件的insert触发器
14—12 赋值after触发器的顺序
14—13 使用instead of触发器更新视图
14—14 instead of触发器中的表达式与运算字段
14—15 在instead of触发器中使用text 、ntext及image数据
14—16 错误信息处理
14—17 如何使用raiserror命令
14—18 如何使用sp_addmessage创建自定义错误信息
14—19 更改触发器的名称
14—20 修改触发器的定义
14—21 删除触发器
结 论
第15章 游标(cursors)
15—1 声明游标
15—2 游标变量——重要!
15—3 如何打开游标
15—4 滚动游标(调用数据日志)
15—5 如何关闭游标
15—6 如何删除游标
15—7 熟练使用@@fetch_status
15—8 熟练使用@@cursor_rows
结 论
1—1 什么是sql query analyzer
1—2 打开sql query analyzer
1—3 查询窗口
1—4 语句颜色与字体设置
1—5 创建新的查询
1—6 编辑查询
l—7 重要操作技巧
1—8 运行查询
1—9 使用模板
1—10 熟练使用对象浏览器
1—11 使用对象搜索功能
结 论
第2章 活用osq1公用程序
2—1 osq1公用程序的使用方式
2—2 osq1公用程序的语法
2—3 运行模式与特殊命令
结 论
第3章 transact—sql程序的基本元素
3—1 transact-sql的组成元素
. 3—2 常量
3—3 字符串常量
3—4 unicode字符串常量
3—5 二进制常量
3—6 bit常量
3—7 日期时间常量
3—8 整数常量
3—9 decimal常量
3—10 float与real常量
3—11 货币值常量
3—12 全球性唯一标识常量
3—13 赋值正数与负数
3—14 常量的使用方式
3—15 局部变量
3—16 table数据类型变量
3—17 运算符
3—18 表达式
3—19 如何为程序加上注释
结 论
第4章 批处理、函数与流程控制命令
4—1 批处理
4—2 函数
4—3 字符串函数
4—4 日期时间函数
4—5 数学函数
4—6 数据类型转换函数
4—7 无参数函数
4—8 流程控制语言
结 论
第5章 动态创建命令语句
5—1 使用execute命令运行命令字符串
5—2 使用系统存储过程sp_exectuesq1运行unicode命令字符串
5—3 成批处理原则
5—4 参数替换功能
结 论
第6章 select查询彻底研究
6—1 select命令语句的语法
6—2 简单的select查询
6—3 设置查询结果的字段名称
6—4 关键字all与distinct的使用
6—5 查询结果的输出目的地
6—6 where参数的条件过滤功能
6—7 select的通用字符
6—8 常量字符与通用字符冲突时的解决之道
6—9 关联条件设置
6—10 统计运算的高手:汇总函数
6—11 数据分组小计
6—12 having参数的使用
6—13 0rder by参数的使用
6—14 查询出名列前茅或垫底者
6—15 活用于查询(subquery)
6—16 自联接(self—joins)
6—17 合并查询结果
6—18 一次查询出各个群组的名列前茅或垫底者
6—19 如何使用compute[by]参数
结 论
第7章 分布式查询
7—1 分布式查询方法一:链接服务器
7—2 使用sp_addlinkedserver创建链接服务器
7—3 使用sql server enterprise manager创建链接服务器
7—4 如何使用openquery()函数
7—5 如何调用远程存储过程
7—6 sp_linkedserver
7—7 sp_dropserver
7—8 sp_tables_ex
7—9 sp_columns_ex
7—10 设置分布式查询的ole db provider配置
7—11 链接服务器的安全性设置
7—12 分布式查询方法二:特定名称
7—13 如何使用openrowset()函数
7—14 如何使用opendatasource()函数
7—15 远程数据与transact—sql命令
7—16 ole db provider的insert需求
7—17 ole db provider的update与delete需求
结 论
第8章 视图(views)
8—1 视图的基本定义与用途
8—2 如何创建视图.
8—3 熟练使用“索引视图”
8—4 活用“分区视图”
8—5 可以更新的分区视图
8—6 通过视图来更新数据
8—7 如何更改视图的名称
8—8 如何更改视图的定义
8—9 如何删除视图
结 论
第9章 如何开发存储过程(stored procedures)
9—1 什么是存储过程,
9—2 存储过程的类型
9—3 存储过程的优点
9—4 如何创建存储过程
9—5 create procedure
9—6 输入参数
9—7 输出参数
9—8 cursor数据类型的输出参数
9—9 嵌套化存储过程
9—10 使用execute命令运行存储过程
9—11 insert..execute
9—12 自动运行存储过程
9—13 更改存储过程的名称
9—14 修改存储过程的定义
9—15 删除存储过程
9—16 重新编译存储过程
结 论
第10章 如何开发自定义函数
10—1 创建自定义函数
10—2 创建标量函数
10—3 创建多重语句表值函数
10—4 创建内嵌表值函数
10—5 如何调用自定义函数
10—6 更改自定义函数的名称
10—7 修改自定义函数的定义
10—8 删除自定义函数
10—9 将数据写入数据表
结 论
第11章 添加、修改与删除数据日志
11—1 使用insert…values
11—2 使用insert…select批处理添加
11—3 添加存储过程的查询结果
11—4 添加自定义函数返回的数据表
11—5 添加查询命令字符串的查询结果
11—6 使用select…into批处理添加
11—7 修改数据日志
11—8 删除数据日志
结 论,
第12章 如何访问text、ntext与image数据
12—1 基本认识
12—2 使用text in row选项
12—3 使用文本指针
12—4 使用textptr()函数获得文本指针
12—5 使用readtext命令读取大型对象数据
12—6 使用writetext命令替换大型对象字段数据
12—7 使用updatetext命令更新大型对象字段
12—8 使用textvalid()函数检查文本指针是否有效
12—9 使用patindex()函数搜索大型文本数据
12—10 如何使用set textsize命令
12—11 获得大型对象数据的长度
结 论
第13章 如何使用bcp与bulk insert完成大量复制操作
13—1 从导入与导出数据谈起
13—2 使用bcp与bulk insert
13—3 活用bcp实用工具
13—4 bcp实用工具实现练习
13—5 活用bulk insert命令
13—6 bulk insert命令实现练习
结 论
第14章 触发器(trigger)
14—1 什么是触发器
14—2 设计触发器
14—3 如何创建触发器
14—4 检查特定的字段是否已被修改
14—5 检查某些字段是否已被修改
14—6 递归触发器
14—7 嵌套触发器
14—8 使用包含rollback transaction命令的触发器
14—9 使用inserted与deleted数据表
14—10 单条与多条数据日志的考虑
14—11 有条件的insert触发器
14—12 赋值after触发器的顺序
14—13 使用instead of触发器更新视图
14—14 instead of触发器中的表达式与运算字段
14—15 在instead of触发器中使用text 、ntext及image数据
14—16 错误信息处理
14—17 如何使用raiserror命令
14—18 如何使用sp_addmessage创建自定义错误信息
14—19 更改触发器的名称
14—20 修改触发器的定义
14—21 删除触发器
结 论
第15章 游标(cursors)
15—1 声明游标
15—2 游标变量——重要!
15—3 如何打开游标
15—4 滚动游标(调用数据日志)
15—5 如何关闭游标
15—6 如何删除游标
15—7 熟练使用@@fetch_status
15—8 熟练使用@@cursor_rows
结 论
光盘服务联系方式: 020-38250260 客服QQ:4006604884
云图客服:
用户发送的提问,这种方式就需要有位在线客服来回答用户的问题,这种 就属于对话式的,问题是这种提问是否需要用户登录才能提问
Video Player
×
Audio Player
×
pdf Player
×
亲爱的云图用户,
光盘内的文件都可以直接点击浏览哦
无需下载,在线查阅资料!