《深探SQL Server 7.0与电子商务开发应用》PDF下载

  • 购买积分:22 如何计算积分?
  • 作  者:刘阶萍等编著
  • 出 版 社:北京:机械工业出版社
  • 出版年份:2000
  • ISBN:7111013409
  • 页数:838 页
图书介绍:

第一部分 基础知识 1

1.2 数据库系统的发展历史 2

1.1 概述 2

第1章 数据库系统简介 2

1.3.1 层次模型 3

1.3 数据库系统的模型和结构 3

1.3.3 关系模型 4

1.3.2 网状模型 4

1.4 数据库管理系统 5

第2章 SQL Server简介 6

2.1 Microsoft SQL Server的发展历史 7

2.2 Microsoft SQL Server的将来 8

2.3 Microsoft SQL Server和Internet 9

2.4 Microsoft SQL Server 7.0的新功能 10

2.4.1 在服务器管理方面的增强和新功能 11

2.5 Microsoft SQL Server功能介绍 13

2.4.2 在图形管理界面主面的增强和新功能 13

2.5.2 存储引擎 14

2.5.1 关系引擎 14

2.5.3 工具 15

2.5.5 桌面和灵活的系统 16

2.5.4 复制 16

2.5.7 Internet,Intranet和电子商务 17

2.5.6 数据仓库 17

2.5.9 与Microsoft BackOffice的集成 18

2.5.8 与Windows NT的集成 18

2.5.10 与Microsoft Visual Studio的集成 20

3.1.1 操作系统 21

3.1 服务器需求 21

第3章 SQL Server的环境 21

3.1.2.1 如何选择 22

3.1.2 微处理器 22

3.1.2.4 有多少能同时使用服务器的并行连接? 23

3.1.2.3 是使用服务器完成OLTP还是DSS应用呢? 23

3.1.2.2 买多少 23

3.1.2.6 除了主要处理SQL Server之外,服务器还有哪些事情? 24

3.1.2.5 使用的计算复杂程度如何? 24

3.1.3 硬盘空间 25

3.1.2.7 响应时间应该为多少? 25

3.1.4 内存 26

3.2 购买和配置一驱动器组 27

3.1.7 如何优先选择 27

3.1.5 磁带备份 27

3.1.6 网络软件 27

3.2.1 浏览RAID标准 28

3.2.2 推荐一:分离序列I/O 29

3.2.4.1 4个驱动器 30

3.2.4 如何应付较少的磁盘 30

3.2.3 推荐二:如有可能,使用硬盘驱动控制器控制RAID 30

3.3.1 使用什么样的文件系统 31

3.3 配置Windows NT 31

3.2.4.2 3个驱动器 31

3.2.4.3 2个盘 31

3.3.3 不使用屏幕保护 32

3.3.2 使用NTFS压缩怎么样? 32

第二部分 构造SQL Server7.0 33

4.1.1 SQL Server7安装特点 34

4.1 概述 34

第4章 安装SQL Server 7.0 34

4.1.2 安装SQL Server 7前的准备工作 35

4.1.3 SQL Server7的版本和安装类型 37

4.2 在Windows 9x上的安装SQL Server 7.0 38

4.2.2 系统要求 39

4.2.1 在Windows 9x上安装时的升级问题 39

4.2.3 在Windows 9x下的安装 41

4.3 在Windows NT中安装SQL Server 7.0 43

4.3.2 系统要求 44

4.3.1 在Windows NT上安装后升级的问题 44

4.3.3 在Windows NT下的实际安装 47

4.4 使用自定义安装SQL Server7.0 49

4.4.1 字符集/排序/Unicode检验 50

4.4.2 网络库 52

4.5.1 自动安装 54

4.5 远程自动安装SQL Server7.0 54

4.4.3 服务帐号 54

4.7 可能存在的问题和解决方法 55

4.6 卸载SQL Server 7.0 55

4.5.2 远程安装 55

第5章 安装SQL Mail和使用SQL Agent 57

5.2.1.1 为SQL Server Agent建立用户帐号 58

5.2.1 SQL Mail安装步骤概述 58

5.1 理解SQL Agent术语 58

5.2 安装SQL邮件 58

5.2.1.2 使用SQL Server Agent用户帐号配置邮件 62

5.2.1.3 使用用户帐号配置SQL Server Agent 63

5.2.1.4 配置SQL Server使用邮件 64

5.3 安装报警 65

5.2.1.5 配置SQL Server Agent使用邮件 65

5.3.2 定义操作员 66

5.3.1 安装条件 66

5.3.4 使用Alert Wizard 67

5.3.3 定义故障-保护操作员 67

5.3.5 用户连接示例 68

5.3.5 安装Performance报警 68

5.3.7 生成脚本! 71

5.4 使用工作(Jobs) 74

5.4.2 检查数据库选项 77

5.4.1 通知 77

5.5 数据库维护 80

5.4.3 建立脚本 80

5.5.2 关于数据库维护脚本(Database Maintenance Scripts) 81

5.5.1 使用数据库维护向导(Database Maintenance Wizard) 81

5.5.3 检查错误记录(Checking Error Logs) 89

5.5.5 备份策略 90

5.5.4 定期回收 90

5.5.6 测试你的恢复程序 91

6.1 升级时间 92

第6章 升级SQL Server 92

6.2 升级规划 93

6.4 升级工具和过程 94

6.3.3 从6.5版升级 94

6.3 升级版本 94

6.3.1 从4.2.1版升级 94

6.3.2 从6.0版升级 94

6.4.1 并行升级(单机) 95

6.5 复制和升级 99

6.4.2 计算机对计算机升级(双机) 99

6.6.2 hotfix类似于服务包 100

6.6.1 服务包Service pack7.0是缺陷修复集 100

6.6 升级的后续工作 100

7.1.1 常规(General)选项卡 101

7.1 选择配置选项 101

第7章 配置SQL Server 7.0 101

7.1.4 安全选项卡 103

7.1.3 处理器选项卡 103

7.1.2 内存选项卡 103

7.1.5.2 隐含事务 104

7.1.5.1 临时/延迟的条件检验 104

7.1.5 连接选项卡 104

7.1.5.5 ANSI去耦 105

7.1.5.4 ANSI警告 105

7.1.5.3 提交时关闭光标 105

7.1.5.13 加强分布式事务(MTS) 106

7.1.5.12 查询溢出时间(Query time out) 106

7.1.5.6 ANSI的空值(ANSI Null) 106

7.1.5.7 数学异常(Arithmetic Abort) 106

7.1.5.8 数学忽略(Arithmetic Ignore) 106

7.1.5.9 引号识别器(Quoted Identitier) 106

7.1.5.10 No Count 106

7.1.5.11 借助RPC使其他的SQL Server与当前SQL Server远程连接 106

7.1.7 数据库设置(Database Setting)选项卡 107

7.1.6 设置(Setting)选项卡 107

7.2.2 许可修改(Allow Updates) 108

7.2.1 临近屏蔽(Affinity Mask) 108

7.2 使用sp configure基于SQL的配置 108

7.2.8 默认的排序id(Default sortorder id) 109

7.2.7 Unicode locale ID选项 109

7.2.3 并行设计的成本阈值(Cost threshold for parallelism) 109

7.2.4 游标阈值(Cusor threshold) 109

7.2.5 Unicode比较风格(Unicode comparison style) 109

7.2.6 默认语言(Default language) 109

7.2.11 锁定(Locks) 110

7.2.10 缓存中的语言(Language in cache) 110

7.2.9 占空因数(Fill factor) 110

7.2.17 媒体保存(Media retention) 111

7.2.16 最大工作线程(Max worker threads) 111

7.2.12 最大async输入/输出(Max async IO) 111

7.2.13 最大并行方案数(Max degree of parallelism) 111

7.2.14 查询等待(Query wait) 111

7.2.15 最大文本复制量(Max text repl size) 111

7.2.22 优先级增加(Priority boost) 112

7.2.21 打开的对象(Open objects) 112

7.2.18 内存(Memory) 112

7.2.19 嵌套的触发器(Nested triggers) 112

7.2.20 网络包的大小(Network packets size) 112

7.2.28 资源超时(Resource timeout) 113

7.2.27 远程查询超时(Remote query timeout) 113

7.2.23 恢复间隔(Recovery interval) 113

7.2.24 远程访问(Remote access) 113

7.2.25 远程登录超时(Remote login timeout) 113

7.2.26 远程处理事务(Remote proc trans) 113

7.2.34 用户选择(User options) 114

7.2.33 用户连接(User Connections) 114

7.2.29 设置工作集大小(Set working set size) 114

7.2.30 显示高级配置选项(Show advanced options) 114

7.2.31 转速计速器(Spin counter) 114

7.2.32 时间限制(Time slice) 114

7.3.1 平衡网络信息量与文件服务器信息量 115

7.3 SQL Server的Windows NT配置 115

7.3.2 为其他的启动模式创建注册表的键值 116

7.3.3 为单用户模式添加一个新的键值 117

第三部分 管理和维护SQL Server 7.0 118

8.1.1 增加Microsoft Management Console Snap-Ins 119

8.1 微软管理控制台(SQL Server Enterprise Manager) 119

第8章 管理工具集 119

8.1.1.1 增加新的服务器组 120

8.1.1.2 SQL Server与外部工具的集成 121

8.1.2 SQL Server的Enterprise Manager功能 124

8.1.2.2 指定系统管理员密码 125

8.1.2.1 注册服务器 125

8.1.2.3 配置本地服务器 127

8.1.2.5 配置多重服务器环境 128

8.1.2.4 配置远程服务器 128

8.1.2.6 设置登录安全性 130

8.1.2.7 创建警告 133

8.1.2.8 管理和配置SQL Mail 135

8.1.2.10 为独立环境创建和安排作业 136

8.1.2.9 建立操作员 136

8.1.2.12 创建和管理复制情形 139

8.1.2.11 为多重服务器环境创建和安排作业 139

8.1.2.13 为SQL ServerEnterprise Manager设置轮询间隔 140

8.2 SQL Server Agent(代理器) 141

8.2.1 定义操作员 143

8.2.2 创建作业 145

8.2.3 创建警告 149

8.3 Query Analiyse(查询分析器) 158

8.2.4 多任务和多方案作业 158

8.3.1 分析器简介 159

8.3.2 配置查询分析器 160

8.3.3 设置查询视图选项 164

8.3.4 使用查询方格 165

8.3.5 分析查询执行方案 166

8.3.6 分析索引 169

8.4.1.1 关于域 170

8.4.1 英文查询环境的组成 170

8.4 Microsoft English Query(英文查询) 170

8.4.1.2 实体和关系的定义 171

8.4.1.3 考虑的问题 172

8.4.2 English Query(英文查询)域编辑器入门 173

8.4.2.1 定义实体 174

8.4.2.2 使用Autoname和Autotrait 176

8.4.2.3 使用高级实体属性 178

8.4.2.4 定义关系 179

8.4.3 使用测试应用工具(Test Application Tool) 182

8.4.3.1 运行Regression Test(恢复测试) 184

8.4.3.3 添加域命令 185

8.4.3.2 向字典添加单词 185

8.4.4 执行English Query(英文查询)工程 186

8.4.5 Question Builder(问题构建器)的使用 187

8.5.1 SQL Server Profiler(应用程序调试工具) 190

8.5 其它管理工具 190

8.5.1.1 SQL Server Profile Queue 191

8.5.1.3 锁定事件 192

8.5.1.2 跟踪事件的类别 192

8.5.1.7 存储过程事件 193

8.5.1.6 会话事件 193

8.5.1.4 杂项事件 193

8.5.1.5 对象事件 193

8.5.1.10 创建跟踪 194

8.5.1.9 事务事件 194

8.5.1.8 TSQL事件 194

8.5.1.11 使用已有的跟踪 195

8.5.2 SQL Server Performance Monitor(性能监视器) 196

8.5.1.12 跟踪输出文件 196

8.5.2.2 生成警告 197

8.5.2.1 启动SQL Server性能监视器 197

8.5.2.3 对象和计数器 200

8.5.2.6 从远程工作站运行性能监视器 201

8.5.2.5 需要连接到SQL Server的许可 201

8.5.2.4 性能因素 201

9.1.1 使用关系模型 202

9.1 数据库的设计 202

第9章 创建和管理数据库 202

9.1.1.1 什么是关系 203

9.1.1.2 行、列排序无关性 208

9.1.1.3 在一个关系中没有重复记录行 209

9.1.2 标准化 210

9.1.2.3 第三标准形式(3NF) 211

9.1.2.2 第二标准形式(2NF) 211

9.1.2.1 第一标准形式(1NF) 211

9.1.3.1 域集成 212

9.1.3 集成约束(Integrity Containts) 212

9.1.3.2 Entity集成 217

9.1.4.1 外部关键字的功用 220

9.1.4 引用集成 220

9.1.4.2 用户定义集成 224

9.2 创建和管理数据库 225

9.2.3 设计数据库文件 226

9.2.2 文件保存 226

9.2.1 数据库体系 226

9.2.4 创建数据库 227

9.2.5 更改数据库和添加文件组 228

9.3.1 表的定义 229

9.3 数据库的表、视图和索引 229

9.2.6 压缩数据库 229

9.3.2 基础知识 230

9.3.2.1 列名 231

9.3.2.2 数据类型 235

9.3.2.6 缺省值 236

9.3.2.5 允许空值 236

9.3.2.3 长度 236

9.3.2.4 精度和等级 236

9.3.3.2 标识(标识、标识基值、标识增量) 237

9.3.3.1 关键字 237

9.3.3 深层知识 237

9.3.3.3 警告!前面有难懂的东西! 239

9.3.3.4 GUID(IsRowGuid) 241

9.3.3.8 修改表 242

9.3.3.7 唯一约束 242

9.3.3.5 检查约束 242

9.3.3.6 外部关键字值 242

9.3.3.9 许可 243

9.3.4.3 方法 245

9.3.4.2 目的 245

9.3.4 视图 245

9.3.4.1 定义 245

9.3.4.4 示例 246

9.3.4.5 视图的可修改规则 247

9.3.5.1 索引类型 248

9.3.5 索引 248

9.4 数据库的触发器 249

9.3.5.3 创建索引 249

9.3.5.2 簇与非簇 249

9.4.2.3 工作规则和逻辑 250

9.4.2.2 数据库逻辑 250

9.4.1 客户/服务器模型 250

9.4.2 客户/服务器拓展:三层分区 250

9.4.2.1 用户接口 250

9.4.3.1 创建触发器 251

9.4.3 触发器 251

9.4.3.2 触发器的其他规则 255

9.4.3.3 示例 256

10.1 块拷贝程序(BCP) 266

第10章 传送数据 266

10.1.2 在哪儿运行BCP 267

10.1.1 谁可以运行BCP 267

10.1.4 实例 268

10.1.3 登记与不登记 268

10.1.5.5 /E 269

10.1.5.4 /c 269

10.1.5 基于文件方式的BCP 269

10.1.5.1 /6 269

10.1.5.2 /a packet size 269

10.1.5.3 /b batchsize 269

10.1.5.11 /k 270

10.1.5.10 /i inputfile 270

10.1.5.6 /e errfile 270

10.1.5.7 /F firstrow 270

10.1.5.8 /f formatfile 270

10.1.5.9 /h”hint[,?,n]” 270

10.1.5.23 /v 271

10.1.5.22 /U login_id 271

10.1.5.12 /L lastrow 271

10.1.5.13 /m maxerrors 271

10.1.5.14 /n 271

10.1.5.15 /o outputfile 271

10.1.5.16 /P password 271

10.1.5.17 /q 271

10.1.5.18 /r row_term 271

10.1.5.19 /S servername 271

10.1.5.20 /t field_term 271

10.1.5.21 /T 271

10.1.6.3 Type(类型) 272

10.1.6.2 # of columns 272

10.1.5.24 /w 272

10.1.6 格式文件 272

10.1.6.1 SQL Ver 272

10.1.6.5 Len 273

10.1.6.4 PrefixLen(前缀长度) 273

10.1.7 示例 274

10.1.6.8 Name 274

10.1.6.6 终止符 274

10.1.6.7 Table Col 274

10.1.7.1 列项对齐 275

10.1.7.2 改变列顺序 276

10.1.7.3 再调整格式 277

10.1.7.5.1 提取数据 278

10.1.7.5 略过列项 278

10.1.7.4 输出格式化的文件 278

10.1.9 空尾随字段 279

10.1.8 使用临时表 279

10.1.7.5.2 拷入数据 279

10.2.2 使用SQL Server Enterprise Manager的脚本 280

10.2.1 SQL脚本文件定义 280

10.2 数据库的录制 280

10.2.4 Data Transformation Services(DTS,数据转换服务) 282

10.2.3 Transaction-SQL脚本 282

10.2.4.1 使用DTS Import Wizard(使用DTS引入向导) 283

10.2.4.2 使用DTS Export Wizard 284

10.2.4.3 创建DTS包的其他方法 285

10.2.4.5 使用dtsrun应用 287

10.2.4.4 使用dtswiz应用 287

11.1.1 不顾麻烦使用多个数据库服务器的原因 289

11.1 概述 289

第11章 复制数据 289

11.1.2.2 在复制什么 290

11.1.2.1 谁在复制 290

11.1.2 什么是复制 290

11.1.3.1 复制的定义 291

11.1.3 基本的复制规则 291

11.1.2.3 何时进行复制 291

11.1.2.4 数据被复制到哪儿 291

11.1.4.1 快照复制 293

11.1.4 复制类型 293

11.1.4.3 合并事务 294

11.1.4.2 事务复制 294

11.1.4.4 合并复制的表设计 295

11.1.5 实际如何概述 297

11.1.6.1 分布器上有些什么 298

11.1.6 自定义复制 298

11.1.6.3 基于日志的复制 301

11.1.6.2 关于同步的研究 301

11.1.7.1 主关键字 304

11.1.7 关于数据库设计 304

11.1.7.3 不用于复制 305

11.1.7.2 其他的DRI、其他的索引和触发器 305

11.1.7.6 其他问题 306

11.1.7.5 如何将条文放到发布中 306

11.1.7.4 使用DRI建立脚本 306

11.2.1 安装分布数据库 307

11.2 建立复制 307

11.1.8 复制的拓扑结构的设计 307

11.2.1.3 建立分布数据库 308

11.2.1.2 磁盘空间检查 308

11.2.1.1 内存检查 308

11.2.1.4 检查你的进度 310

11.2.2.2 使用Transact-SQL建立接收器和发布数据库 311

11.2.2.1 使用SQL Enterprise Manager建立接收器 311

11.2.2 建立接收器和发布数据库 311

11.2.3 建立接收数据库 313

11.2.2.3 检查你的进度 313

11.2.3.2 不会如此快 314

11.2.3.1 现在要察看的内容 314

11.2.4.5 编辑条文 315

11.2.4.4 Synchronization选项卡 315

11.2.4 定义发布和条文 315

11.2.4.1 在SQL Enterprise Manager中建立发布 315

11.2.4.2 发布标题 315

11.2.4.3 定义一个条文 315

11.2.4.6 发布 318

11.3 管理复制 321

11.2.5 DBO的发布许可 321

11.3.1.1 使用sp addarticle建立条文 322

11.3.1 使用SQL保存工作 322

11.3.2 从发布数据库建立脚本 323

11.3.1.2 删除条文 323

11.3.2.1 发布 324

11.3.2.2 条文 325

11.3.3 使用你自己的复制保存程序 326

11.3.4 关于外部关键字的问题 328

11.3.5 监视复制和修改监视属性 329

11.3.5.1 监视发布器、用户历史以及用户对话细节 329

11.3.6.1 查看复制警告 330

11.3.6.2 完成复制安装 330

11.3.6 查找复制的故障 330

11.3.5.2 修改复制监视属性 330

11.3.6.3 日志读取器 331

11.3.6.4 分布任务 332

11.3.7 卸载发布 333

11.4 复制异类 333

11.4.2 如何复制到ODBC数据源 334

11.4.2.1 建立一个ODBC数据源 334

11.4.1 工作规则 334

11.4.2.4 在向Oracle复制中的问题 336

11.4.2.3 复制如何使用ODBC工作 336

11.4.2.5 远程ODBC驱动程序配置 336

11.4.2.5 使Oracle准备好接收复制 337

11.4.2.6 建立Oracle ODBC数据源 338

11.4.2.7 核实你的连接 339

11.4.2.9 建立一个ODBC推动接收 340

11.4.2.10 为ODBC复制使用保存程序 340

11.4.2.8 添加一个ODBC接收器 340

11.4.3 向一个不被支持的RDMS--SQL Server4.21复制 341

11.4.3.1 第1步:确保你能与SQL Server 4.21通信 341

11.4.3.2 第2步:为SQLServer42建立一个ODBC数据源 343

11.4.3.3 第3步:使用MS Query来确保恢复正常 343

11.4.3.5 第5步:查找任务的故障 344

11.4.3.6 第6步:测试基于记录的复制 344

11.4.3.4 第4步:将SQLServer42定义为一个接收器,用它接收发布 344

11.4.3.7 第7步:建立自定义复制程序 345

11.4.4 来自不同数据库的复制 345

12.1.1 数据仓库过程(Data Warehousing Process) 346

12.1 现述 346

第12章 微软的数据仓库框架技术 346

12.1.2 数据仓库体系结构 347

12.2 微软数据仓库框架 348

12.1.3 数据仓库组件 348

12.2.1 数据仓库框架组件 349

12.3.2 OLE DB的定义 350

12.3.1 利用COM对UDA建模 350

12.3 OLE DB:信息交换标准 350

12.3.3 定义ActiveX数据对象 351

12.4 Microsoft Repository:数据仓库的黏合剂 352

12.5 数据仓库的设计 352

12.6.1 可扩缩的和健壮的RDBMS 353

12.6 数据仓库的数据库 353

12.6.2 综合的OLAP分析能力 354

12.6.3 数据复制 355

12.7 导入、导出和转换数据 355

12.7.2 DTS的体系结构 356

11.3.2.3 使用Enterprise Manager 356

12.7.1 DTS的目标 356

12.7.3 DTS包 359

12.8.2 Microsoft English Query 360

12.8.1 Microsoft Office 360

12.8 分析、提交数据 360

12.8.3 第三方产品 361

12.9.2 向导 362

12.9.1 Microsoft Management Console(微软管理控制台) 362

12.9 系统管理 362

12.9.3 可视化的数据库图表结构 363

12.9.5 SQL Server Query Analyzer 364

12.9.4 SQL Server Profiler 364

12.9.7 SQL Server代理服务 365

12.9.6 Index Tuning Wizard(索引调整向导) 365

13.1.1 内存 367

13.1 自动和动态配置 367

第13章 数据库管理员的任务简化 367

13.1.2 锁定(Locks) 368

13.1.5 当恢复时数据库自动创建和改变 369

13.1.4 自动增长TempDB和启动重置 369

13.1.3 数据库文件自动扩展 369

13.1.7 配置选项的简化 370

13.1.6 Transact SQL版本兼容性级别 370

13.2 动态结构管理 372

13.2.3 唯一标识符数据类型和全局唯一标识符 373

13.2.2 修改视图、触发器和存储过程 373

13.2.1 删除列 373

14.1.1 登录 374

14.1 登录和授权 374

第14章 SQL Server 7.0的安全性 374

14.1.1.2 Windows NT授权(Windows NT Authentication) 375

14.1.1.1 SQL Server授权(SQL Server Authentication) 375

14.1.2 安全模式(Security Modes) 376

14.1.3 维护登录号 378

14.2 用户 380

14.1.3.3 SQL Server安装的登录号 380

14.1.3.1 修改口令 380

14.1.3.2 拒绝访问 380

14.4 用户角色 381

14.3 用户角色、NT小组和固定角色 381

14.5 预定义的角色 382

14.7 授予、拒绝和取消 383

14.6 应用角色 383

14.8.1 不可授权许可 384

14.8 许可(Permissions) 384

14.8.2 语句许可(Statement Permissions) 385

14.9 所属关系链 386

14.8.3 对象许可 386

14.10 对系统表授权 387

14.11 安全和互联网 390

14.12 关于安装用户和别名 391

15.1 更新统计 392

第15章 数据库的维护 392

15.2 数据库一致性检查器 393

15.2.2 DBCC UPDATEUSAGE 394

15.2.1 DBCC错误的修复技术 394

15.3.1 恢复可疑数据库 395

15.3 可疑的数据库 395

15.2.3 DBCC OPENTRAN 395

15.4 遵守标准 396

15.3.2 用RESTORE语句恢复可疑数据库 396

15.5.1 数据库备份 397

15.5 备份方法 397

15.5.3 事务日志备份 398

15.5.2 差分数据库备份 398

15.5.4 使用多个备份设备进行备份 400

15.5.6 备份/恢复磁带重启动能力 401

15.5.5 备份单个数据库文件或文件组 401

15.5.7 备用服务器备 402

第四部分 SQL语言参考 403

16.1 关于SQL 404

第16章 Transact-SQL语言 404

16.3 构造Transact-SQL 405

16.2 编辑和运行Transact-SQL的环境 405

16.5 执行一个查询:SELECT语句 406

16.4 开始查询 406

16.5.2 控制SELECT的输出 408

16.5.1 使用查询语句 408

16.5.3.1 SQL命令是对大小写敏感的 409

16.5.3 相关SQL语法的概要 409

16.5.3.3 逗号周围的空白格是可选的 410

16.5.3.2 SQL Server忽略空白格 410

16.5.4 ORDER BY简化 411

16.5.6 不是所有的SELECT语句都相同 412

16.5.5 下降排序 412

16.5.8 TOP关键字:减少结果集 413

16.5.7 特殊的关键字:保存唯一性 413

16.6.2 只有一个条件的WHERE子句 415

16.6.1 WHERE子句:基本语法 415

16.6 WHERE子句 415

16.6.3 有多个条件的WHERE子句 416

16.6.4 使用括号控制顺序 417

16.7.1 重命名列项 418

16.7 计算和重命名的列 418

16.7.2.1 在查询中使用常数 419

16.7.2 使用表达式 419

16.7.2.2 使用字符串函数 420

16.7.2.3 使用系统函数 421

16.8 GROUP BY和HAVING 422

16.8.1 WHERE与HAVING的区别 423

16.8.2.1 理解ROLLUP 424

16.8.2 CUBE和ROLLUP 424

16.8.2.2 理解CUBE 425

17.1.1 SQL介绍 428

17.1 SQL基础 428

第17章 标准SQL语言大全 428

17.1.2 使用SQL从表中取记录 429

17.1.3 使用ISQL执行SELECT查询 431

17.1.4 操作多个表 432

17.1.5 操作字段 434

17.1.6 排序查询结果 435

17.1.7 取出互不相同的记录 437

17.1.8 创建新表 438

17.2.1 建立索引 445

17.2 高级SQL 445

17.2.2 SQL核心语句 448

17.2.3 集合函数 451

17.2.4 其它常用的SQL表达式,函数,和过程 453

18.1 发展历史 465

第18章 ANSI SQL-92的介绍 465

18.1.2 越陷越深 466

18.1.1 标准的重要性 466

18.2.2 日期、时间和时间间隔 467

18.2.1 位变量(varbit)和位(n) 467

18.2 数据类型 467

18.3 关系领域的不司观点 468

18.2.3 国家标准的字符 468

18.3.3 目录 469

18.3.2 方案(schema) 469

18.3.1 表 469

18.5.1 记录行值构造器 470

18.5 数据检索区别 470

18.3.4 数据库 470

18.4 表列的修改 470

18.5.2.1 INTERSECT 471

18.5.2 集合运算及术语 471

18.5.2.3 OVERLAPS 472

18.5.2.2 EXCEPT 472

18.6 Transact-SQL优于SQL-92的方面 473

18.5.2.4 UNIQUE 473

18.7.2 多媒体的SQL:SQL/MM 474

18.7.1 面向对象的SQL 474

18.7 SQL-92标准之后的下一个标准:SQL 3 474

18.8 Transact-SQL的中值 475

18.7.3 描述时间:SQL/Temporal 475

第五部分 SQL Server 7.0的开发与实务 478

19.1.1 什么是保存程序 479

19.1 基本保存程序 479

第19章 使用Transact-SQL开发保存程序 479

19.1.3 运行一个保存程序 480

19.1.2 保存程序的应用划分以及它与你有关的原因 480

19.1.4.1 基本思想 481

19.1.4 使用CREATE PROCEDURE创建自己的保存程序 481

19.1.4.3 程序组合 482

19.1.4.2 在一个程序内使用SELECT 482

19.1.4.4 传递参数 485

19.1.4.5 封装的保存程序 491

19.1.4.6 WITH RECOMPILE 492

19.1.4.7 WITH ENCRYPTION 493

19.1.5 延迟的时间鉴别 494

19.1.4.8 FOR REPLICATION 494

19.2.2 如何安装扩展保存程序 495

19.2.1 什么是扩展保存程序? 495

19.2 创建扩展保存程序 495

19.2.5.1 基本思想和流 496

19.2.5 使用ODS创建XP 496

19.2.3 XP如何工作 496

19.2.4 OPEN Data Services(ODS) 496

19.2.5.2 将数据送回SQL Server 498

19.2.5.3 读参数 502

19.2.5.4 发送提示和错误消息 503

19.2.5.5 示例 504

19.2.6.1 完整的源代码 510

19.2.6 ODSTest.dll 510

20.1 Transact-SQL对OLE的支持 519

20.1.1 创建sp OACreate对象 519

第20章 使用OLE开发应用程序 519

20.1.3 sp OAMethod-执行方法 520

20.1.2 获得和设置属性--sp_OAGetProperty/sp_OASetProperty程序 520

20.1.4.1 结果代码 521

20.1.4 检索和显示结果错误信息 521

20.1.4.2 sp_displayoaerrorinfo 522

20.3.1.1 安装Tester对象 524

20.3.1 使用Tester对象 524

20.2 取消对象及停止共享OLE执行环境 524

20.2.1 sp_OADestroy 524

20.2.2 sp_OAStop 524

20.3 示例 524

20.3.1.2 使用对象 525

20.3.2 带有DROLEMail的E-mail和OLE 526

21.1 什么是SQL Distributed Management Objects(SQL-DMO) 532

第21章 使用SQL-DMO编程 532

21.2.2.2 获得版本信息 533

21.2.2.1 必要的处理 533

21.2 SQL-DMO对象 533

21.2.1 向Visual C++工程中添加SQL-DMO支持 533

21.2.2 Application对象 533

21.2.2.3 获得可用服务器的列表 534

21.2.3.2 稍微进行一些扩展 535

21.2.3.1 连接 535

21.2.3 SQLServer对象 535

21.3 执行查询和检查结果集 536

21.3.2.1 从结果集检索数据 537

21.3.2 QueryResults对象 537

21.3.1 ExecuteWithResult() 537

21.3.2.2 GetRangeString() 538

21.4.1 访问服务器的配置信息 539

21.4 使用SQL-DMO扩展SQL Server 539

21.4.2 使用保存程序 541

21.5 SPBrowser源代码 542

22.3 安装Snap-in 551

22.2 注册Snap-in控件 551

第22章 使用SQL-DMO-SECRETS Snap-In控件 551

22.1 Snap-in控件是做什么的 551

22.5.1 开始部分 554

22.5 代码讲述 554

22.4 Snap-in控件的基本结构 554

22.5.2 使对话成为控件的一部分 559

22.6.1 初始化、定大小和显示 561

22.6 CSnapInDlg--控件的核心 561

22.6.2 显示菜单 562

22.6.3 处理菜单命令 564

22.7.1 安装 568

22.7 执行你的SQL-CSQLWindowDlg 568

22.7.2 运行你的查询 570

23.1.1 可行性研究 572

23.1 基于WEB的现代企业管理信息系统的项目规划 572

第23章 项目规划 572

23.1.3 系统概要设计 574

23.1.2 系统分析 574

23.1.4 系统详细设计 576

23.1.5 系统开发计划安排 580

23.2.2 中旅公司建立《中华旅神旅游信息网》主要意义 582

23.2.1 中国中旅公司简介(略) 582

23.1.6 进行具体的项目开发 582

23.2 中华旅神旅游信息网的项目规划 582

23.2.4 《中华旅神旅游信息网》系统设计方案说明 583

23.2.3 《中华旅神旅游信息网》系统设计目标和设计原则 583

23.2.4.2 《中华旅神旅游信息网》网站首页设计与制作的内容: 584

23.2.4.1 《中华旅神旅游信息网》网站网页设计与制作的特点: 584

23.2.4.3 《中华旅神旅游信息网》网站网页设计总体框架 585

23.2.5.1 《中华旅神旅游信息网》数据库的设计 590

23.2.5 《中华旅神旅游信息网》数据库开发 590

23.2.5.4 数据库系统的总体设计: 591

23.2.5.3 《中华旅神旅游信息网》数据库开发功能概要说明: 591

23.2.5.2 《中华旅神旅游信息网》数据库开发技术特点 591

23.2.6 《中华旅神旅游信息网》系统开发工期预算 594

24.1 商品数据库系统的建立 595

第24章 电子商务开发应用实例 595

24.2 使用ASP访问SQL Server 7.0数据库的接口 598

24.2.1 系统操作界面 599

24.3 网上商城的商品发布系统的建立 599

24.2.2.1 源代码 600

24.2.2 添加商品信息 600

24.2.3.1 源代码 603

24.2.3 修改商品信息(这里只是以修改商品价格为例进行说明) 603

24.2.2.2 结果操作界面 603

24.2.3.2 结果操作界面 608

24.2.4.1 源代码 609

24.2.4 删除商品信息 609

24.2.4.2 结果操作界面 612

24.2.5.1 源代码Browse.asp 613

24.2.5 浏览商品发布结果 613

24.3 网上商城的购物系统的实现 614

24.2.5.2 浏览结果界面 614

24.3.1.1 源代码:shopping.asp 615

24.3.1 产品发布系统 615

24.3.2.1 源代码:Add.asp 623

24.3.2 购物清单的实现 623

24.3.1.2 产品发布界面 623

24.3.3.1 源代码:check.asp 626

24.3.3 购物车的实现 626

24.3.2.2 购物清单界面 626

24.3.3.2 购物车界面和其它操作结果 631

24.3.4.1 源代码:List.asp 635

24.3.4 购物结算清单的实现 635

24.3.5 其它相关源代码文件说明 644

24.3.4.2 购物结算结果清单界面 644

25.1.1 数据库移植中用到的SQL Server工具 647

25.1 将Access数据库移植到Microsoft SQL Server7.0 647

第25章 Access和Oracle数据库的开发移植 647

25.1.3 移植Microsoft Access查询 648

25.1.2 转移表和数据 648

25.1.3.4 Access查询类型的SQL Server移植选择与建议 649

25.1.3.3 视图(Views) 649

25.1.3.1 事务处理SQL脚本程序(Transact-SQL scripts) 649

25.1.3.2 存储过程(Stored procedures) 649

25.1.5 移植Microsoft Access查询到事务处理SQL语句 650

25.1.4 移植Microsoft Access的查询到存储过程和视图 650

25.1.6.1 使用参数 651

25.1.6 其他设计上的考虑 651

25.1.6.3 检查SQL Server 652

25.1.6.2 嵌套查询 652

25.1.7 SQL SERVER和Access查询语法 653

25.1.6.4 连接你的应用程序 653

25.2.2 概述 655

25.2.1 开发和应用程序平台 655

25.2 把Oracle数据库移植到Microsoft SQL Server 7.0 655

25.2.2.1 SQL语言扩展 656

25.2.4.1 数据库的定义 657

25.2.4 结构和术语 657

25.2.2.2 ODBC 657

25.2.2.3 OLE DB 657

25.2.3 本文的组织方式 657

25.2.4.2 物理和逻辑存储结构(Physical and Logical Storage Structures) 658

25.2.4.4 标记数据(Striping Data) 659

25.2.4.3 在一个文件组中备份和恢复个别表和表的设置 659

25.2.4.6 备份和恢复数据 660

25.2.4.5 事务日志和自动恢复(Transaction Logs and Automatic Recovery) 660

25.2.4.8 数据库安全性和角色(Database Security and Roles) 661

25.2.4.7 网络 661

25.2.5 安装和配置Microsoft SQL Server 664

25.2.6 定义数据库对象 665

25.2.6.1 数据对象标识符 666

25.2.6.2 修饰表名 667

25.2.6.4 表和索引存储参数 669

25.2.6.3 创建表 669

25.2.6.5 用SELECT语句创建表 670

25.2.6.6 视图 671

25.2.6.7 索引 672

25.2.6.8 使用临时表 676

25.2.6.9 使用Unicode数据 677

25.2.6.10 用户定义数据类型 678

25.2.6.12 对象级许可 679

25.2.6.11 Microsoft timestamp列 679

25.2.7 加强数据完整性和商业规则 680

25.2.7.4 增加和清除约束 681

25.2.7.3 主键和唯一列 681

25.2.7.1 实体完整性(Entity Integrity) 681

25.2.7.2 为约束命名 681

25.2.7.5 生成连续的数字值 683

25.2.7.7 DEFAULT和CHECK约束 684

25.2.7.6 域完整性 684

25.2.7.8 Nullability 685

25.2.7.9 引用完整性 686

25.2.7.12 存储过程 687

25.2.7.11 用户定义的完整性 687

25.2.7.10 外部键 687

25.2.7.13 延迟存储过程的执行 690

25.2.7.15 触发器(Triggers) 691

25.2.7.14 指定存储程序中的参数 691

25.2.8.1 事务 693

25.2.8 事务、锁定和并行 693

25.2.8.2 锁定和事务孤立 695

25.2.8.3 改变缺省的锁定行为 696

25.2.8.6 锁定升级 698

25.2.8.5 表级别的锁定 698

25.2.8.4 SELECT…FOR UPDATE 698

25.2.9.1 远程事务 699

25.2.9 死锁 699

25.2.9.3 两步提交处理 700

25.2.9.2 分布事务 700

25.2.10.2 SELECT statements语句 701

25.2.10.1 SELECT和数据操作声明 701

25.2.10 SQL语言支持 701

25.2.10.3 INSERT语句 702

25.2.10.4 UPDATE语句 704

25.2.10.6 TRUNCATE TABLE语句 706

25.2.10.5 DELETE语句 706

25.2.10.9 行合计和计算子句 707

25.2.10.8 锁定被请求的行 707

25.2.10.7 在identity和timestamp列中操作数据 707

25.2.10.10 连接子句(Join clauses) 708

25.2.10.12 读取和修改BLOBs 709

25.2.10.11 用SELECT语句做表名 709

25.2.10.13 函数 710

25.2.10.14 比较操作符 717

25.2.10.15 模式匹配 718

25.2.10.16 流控制(Control-of-Flow)语言 719

25.2.11 实现游标 725

25.2.11.1 声明一个游标 726

25.2.11.3 抽取数据 727

25.2.11.2 打开一个游标 727

25.2.11.5 游标示例 728

25.2.11.4 关闭一个游标 728

25.2.12.3 SET语句 729

25.2.12.2 SQL Server Profiler 729

25.2.12 调试SQL语句 729

25.2.12.1 SQL Server Query Analyzer(SQL Server查询分析器) 729

25.2.13 使用ODBC 730

25.2.12.4 查询优化 730

25.2.13.2 ODBC结构 731

25.2.13.1 推荐的转换策略 731

25.2.13.4 可卷动游标 733

25.2.13.3 服务器游标 733

25.2.13.6 数据类型映射 735

25.2.13.5 一个连接上的多个活动语句 735

25.2.13.9 Date、Time、和Timestamp值 737

25.2.13.8 外部连接(Outer Joins) 737

25.2.13.7 ODBC扩展SQL(ODBC Extended SQL) 737

25.2.13.11 SQL方言翻译 738

25.2.13.10 调用存储过程 738

25.2.13.12 手工提交模式 739

25.2.14.1 嵌入的SQL 740

25.2.14 移植应用程序 740

25.2.14.2 开发者2000(Developer 2000)和第三方应用程序 742

25.2.15 数据库示例 743

25.2.14.3 互联网应用程序 743

25.2.15.1 示例大学应用程序 744

25.2.15.3 运行提供的脚本 745

25.2.15.2 示例应用程序和代码引用 745

第六部分 SQL Server7.0的系统封装性 747

26.1.1 SQL Server系统目录的特点 748

26.1 初步观察 748

第26章 SQL Server7.0的系统表 748

26.1.2 系统表的分类 749

26.1.3 整数ID 750

26.1.5 查询位标志 751

26.1.4 使用整数字段标志 751

26.1.6 伪动态的SQL 752

26.2 关于基本的系统表 754

26.2.1.1 关于sysobjects的帮助 755

26.2.1 sysobjects 755

26.2.1.2 在查询中使用sysobjects 756

26.2.1.3 sysobjects的伪动态的SQL 759

26.2.2 Sysindexes 760

26.2.1.4 sysobjects的其他用途 760

26.2.2.1 读取索引信息 762

26.2.3 sysindexes的DBO视图 763

26.2.2.2 系统表的主关键字 763

26.2.4 syscolumns 764

26.3.1 syscomments 765

26.3 数据库目录的其他部分 765

26.3.2.1 无登录用户 767

26.3.2 sysusers 767

26.3.2.2 错误登录的用户 769

26.3.2.3 不允许用户进入缺省数据库 769

26.3.3 sysdepends 770

26.3.4 sysreferences 770

26.4 系统目录 770

26.4.1 sysdatabases 771

26.4.2 sysprocesses 771

26.4.3 sysxlogins 773

26.4.3.1 查找一个登录 773

26.4.3.2 对所有的登录进行操作 773

26.4.3.3 修改登录的名字 774

26.4.3.4 查找NULL或显而易见的口令 774

26.4.3.5 查找没有缺省数据库的登录 775

第27章 SQL Server7.0的DBCC 776

27.1 一般性介绍DBCC 776

27.1.1 DBCC的许可 778

27.1.2 跟踪标志 778

27.1.3 DBCC帮助 780

27.2 查找缺陷 780

27.2.1 CHECKDB 781

27.2.2 运行CHECKDB 781

27.2.2.1 如何修复被破坏的表 782

27.2.3 CHECKTABLE(table_name[,NOINDEX|index_id]) 783

27.2.2.3 当系统表被破坏时要做的事情 783

27.2.4 CHECKCATALOG[(database_name)] 783

27.2.2.2 使用CHECKDB的修复选项 783

27.2.5 CHECKALLOG[(database_name[,NOINDEX])] 784

27.2.6 重建索引 784

27.2.7 SHOWCONTIG(table_id,[index_id]) 785

27.2.8 DBCC DBREINDEX 786

27.2.9 修改sysindexes 787

27.2.10.1 INPUTBUFFER 788

27.2.10.2 OPENTRAN 788

27.2.10 在出现故障后查找故障 788

27.2.11 内存检查 789

27.2.11.1 DBCC PERFMON 789

27.2.11.2 DBCC MEMUSAGE 792

27.2.11.3 DBCC PROCCACHE 796

27.2.11.4 pinning表 797

27.2.12 DBCC CHECKFILEGROUP 797

28.1.1 BACKUP 799

28.1 使用的文件和目录 799

28.1.2 Data 799

第28章 SQL Server7.0内部数据保存结构 799

28.1.2.1 初始的数据库文件大小 802

28.1.2.2 缩短和增大文件,断页辨别 803

28.1.2.3 日志或.ldf,文件 807

28.1.2.4 数据库文件或.mdf文件 809

28.1.2.5 FTDATA 812

28.1.3 JOBS 815

28.1.4 LOG 815

28.1.5 REPLDATA 816

28.2 b树索引 816

28.3 分布统计 817

28.3.1 UPDATE STATISTICS 817

28.3.2 察看统计结果 818

28.4 锁定 819

第29章 SQL Server 7.0的优化器 822

29.1 优化器使用的统计数据 823

29.1.1 使用sp_autostats程序 823

29.1.2 使用UPDATE STATISTICS语句 824

29.1.3 使用DBCC SHOW_STATISTICS查看统计数据 825

29.1.4 重新编译应用保存程序 827

29.2 查看执行方案 827

29.3 使用优化器提示 831

29.4 并行查询 833

29.5 故障检修员的检查清单 834

29.6 帮助你跟踪问题的工具 835