Visual Basic2005数据库专家编程

Visual Basic2005数据库专家编程
作 者: 詹尼斯
出版社: 清华大学出版社
丛编项:
版权说明: 本书为出版图书,暂不支持在线阅读,请支持正版图书
标 签: 算法语言
ISBN 出版时间 包装 开本 页数 字数
未知 暂无 暂无 未知 0 暂无

作者简介

  本书作者Roger Jennings,不仅是OakLeaf Systems的负责人、Fawcette Technical Publications网站负责人,还是Visual StudioMagazine的资深编辑,编著过二十多本微软数据库平台和Windows操作系统方面的图书。

内容简介

本书由微软数据库开发专家、知名图书大师Roger Jennings编写,面向有经验的Visual Basic程序员。本书包含丰富的Visual Basic 2005数据开发技巧和经验,内容涉及到ADO.NET 2.0、SQL Server 2005、ASP.NET 2.0数据处理技术等,可帮助读者大大提升利用Visual Basic 2005和SQL Server 2005开发数据库应用程序的能力。

图书目录

第I部分 ADO.NET 2.0

基础知识

第1章 从ADO向ADO.NET移植 3

1.1 数据访问的新方式 4

1.1.1 System.Data命名空间 4

1.1.2 ADO.NET数据提供者 6

1.2 ADO.NET的基本数据对象 6

1.2.1 用SqlClient创建基本

ADO.NET数据对象 8

1.2.2 对多表更新应用事务 15

1.2.3 使用OleDb、SqlXml和Odbc

成员类 17

1.2.4 使用类型化DataReader数据

和SqlResultSet数据 21

1.3 ADO.NET的类型化DataSet

对象 22

1.3.1 通过SQL Server数据源添加

类型化DataSet 24

1.3.2 添加DataGridView和

BindingNavigator控件 28

1.3.3 持久化和重新打开DataSet 30

1.3.4 将DataViewGrid更改为

Details窗体 31

1.3.5 添加相关的DataBound

控件 32

1.4 小结 34

第2章 ADO.NET 2.0新功能介绍 35

2.1 使用新的ADO.NET 2.0运行

时Windows窗体对象 35

2.1.1 用DbProviderFactories创建

数据库不明确的项目 36

2.1.2 检索基表架构 39

2.1.3 校验有效的SQL Server实

例和ADO.NET 2.0数据

提供者 41

2.1.4 利用SqlBilkCopy对象对

SQL Server表进行批量

插入 42

2.1.5 SQL Server连接统计信息 45

2.1.6 异步执行SqlCommands 47

2.1.7 创建单独的DataTable 56

2.1.8 用Nullable类型支持

DBNull值 60

2.2 使用ADO.NET 2.0的新持久

性Windows窗体对象 64

2.2.1 ADO.NET 1.x与2.0的数据

设计器比较 64

2.2.2 向工具箱添加没显示的

ADO.NET控件 66

2.2.3 将1.x项目升级为ADO.NET

2.0组件 67

2.2.4 添加多级子窗体 67

2.2.5 参数化MasterDetailsForm 69

2.2.6 批量多次更新 71

2.3 用ReportViewer控件设计和

显示报表 72

2.4 小结 74

第3章 对以数据为中心的项目采用

最佳实践 77

3.1 建立体系结构的最佳实践 78

3.2 为项目确定模式 80

3.2.1 使用Microsoft .NET的企业

解决方案模式 81

3.2.2 数据模式 81

3.2.3 分布式系统模式 82

3.2.4 集成模式 82

3.3 应用程序块库 83

3.3.1 数据访问应用程序块 84

3.3.2 DataAccessQuickStart

客户端 88

3.4 遵循设计指南 90

3.4.1 .NET数据访问体系结构

指南 90

3.4.2 提高.NET应用程序的性能

和可伸缩性 91

3.4.3 设计数据层组件并在层间

传递数据 91

3.5 类库设计指南 96

3.5.1 命名指南 96

3.5.2 类成员使用指南 97

3.6 面向服务的架构 98

3.6.1 面向服务的架构 98

3.6.2 用Web服务实现SOA 99

3.6.3 保证完全互操作的Web

服务 100

3.7 用FxCop验证项目代码 104

3.8 自动完成测试驱动的开发 106

3.8.1 向VS 2005解决方案添加

单元测试项目 106

3.8.2 编辑和运行向导生成的

测试 108

3.9 运行SQL Server 2000最佳

实践分析器 109

3.10 对ADO.NET 2.0项目采用

特殊最佳实践 111

3.10.1 对存储池数据库连接采用

相同连接字符串 111

3.10.2 运行SQL Server分析器来

检验SQL和RPC查询 112

3.10.3 避免添加运行时

CommandBuilder实例 113

3.10.4 用存储过程代替SQL批量

查询 114

3.10.5 为不需要的参数添加

默认值 114

3.10.6 利用sp_executesql和命名

参数重新使用缓存的查询

计划 114

3.10.7 向开放式并发控件添加

timestamp列 115

3.10.8 在并发测试中检验所有

关联记录 118

3.10.9 通过批量更新减少服务器

往返行程 118

3.10.10 利用客户端验证避免

SqlExceptions 118

3.11 小结 119

第II部分 Windows窗体和控

件中的数据绑定

第4章 对TableAdapters、Binding

Sources和DataGridView

编程 123

4.1 设计基本的客户-订单-订单

详细窗体 123

4.1.1 利用参数化查询减小

DataSet的尺寸 124

4.1.2 创建数据源并添加控件 125

4.1.3 为各数据表添加FillBy

方法 126

4.1.4 更改自动生成的代码来满足

控件的要求 128

4.1.5 用CustomerID值填充

组合框 129

4.1.6 清除UI和代码 130

4.2 格式化并添加DataGrid

View列 131

4.2.1 设置OrdersDataGridView

列的格式 131

4.2.2 格式化Order_DetailsDataGrid

View并添加计算列 132

4.3 为新记录提供默认值 134

4.3.1 添加默认的订单记录值 134

4.3.2 添加默认的详细记录值 135

4.4 处理DataErrors事件 136

4.5 流线型Heads-down数据

输入 137

4.6 将UI移植到选项卡式窗

体上 139

4.6.1 测试OrdersByCustomersV3

项目 140

4.6.2 用代码添加行时修改丢失的

默认值 141

4.6.3 在第二个选项卡页面编辑选

择的DataGridView记录 142

4.7 为主键值创建和绑定查询

列表 143

4.7.1 创建非类型化查询DataSet

及其DataTables 144

4.7.2 填充cboCustomerID

组合框 146

4.7.3 用组合框代替DataGridView

文本框 146

4.7.4 为组合框与文本框建立

关联 149

4.8 添加设置附加值的组合框 151

4.8.1 创建和绑定根据ProductName

排序的DataView 151

4.8.2 测试复制性并更新

UnitPrice列 152

4.9 为新客户输入添加查询表行 155

4.9.1 添加和绑定CustomerID

BindingSource 155

4.9.2 用DataRowView测试

重复性 156

4.10 对编辑应用业务规则 157

4.11 将更改保存到基表 159

4.11.1 维护引用的完整性 159

4.11.2 创建并测试UpdateBase

Tables函数 160

4.12 小结 168

第5章 添加数据验证和并发管理 171

5.1 验证数据输入 173

5.1.1 验证文本框 173

5.1.2 验证DataGridViews 174

5.1.3 发现输入中的主键约束

冲突 176

5.1.4 验证默认值 177

5.2 管理并发冲突 178

5.2.1 ADO.NET 2.0并发控制和

事务变更 179

5.2.2 并发控制战略 181

5.2.3 并发管理的“链接丢失” 181

5.2.4 预测基于值的主键约束

冲突 189

5.3 合理处理并发错误 191

5.3.1 从服务器上获取当前数据 192

5.3.2 检索并比较服务器和客户端

单元值 194

5.4 容纳非连接用户 198

5.4.1 创建和管理脱机DataSet 198

5.4.2 处理多个父记录 200

5.5 小结 201

第6章 高级DataSet技术应用 203

6.1 对DataSet更新应用事务 203

6.2 对DataTable选择命令添加

联接 211

6.2.1 向SelectCommand添加

联接 211

6.2.2 向DataGridView添加联接

的列 213

6.2.3 提供默认值并更新只读列 213

6.3 通过减少DataSet的尺寸来

提高性能 215

6.3.1 由TOP n查询返回的

限制行 216

6.3.2 为TableAdapters添加

部分类 216

6.4 在DataGridViews中使用

图像 217

6.4.1 向DataGridViews添加

图像列 218

6.4.2 填充DataGridView图像 219

6.5 用DataSet和DataGridViews

编辑XML文档 222

6.5.1 利用已有的XML架构

生成DataSet 223

6.5.2 推断一个XML架构来生成

DataSet 236

6.5.3 通过XML数据源创建编辑

窗体 237

6.6 通过架构生成可序列化类 241

6.6.1 用可序列化类创建数据源 243

6.6.2 用泛型BindingList集合提高

编辑功能 245

6.7 小结 248

第III部分 ASP.NET 2.0中的

数据绑定

第7章 ASP.NET 2.0的DataSources

和绑定控件 251

7.1 ASP.NET 2.0的新功能 252

7.1.1 ASP.NET 2.0的编译模型 255

7.1.2 ASP.NET 2.0的特殊

文件夹 257

7.1.3 ASP.NET 2.0的新数据

控件 257

7.2 DataSource控件 258

7.3 DataList控件 259

7.3.1 用于绑定控件的

SqlDataSources控件 260

7.3.2 控件属性 264

7.3.3 数据绑定模板与数据

格式化 265

7.3.4 绑定控件值的DataSource

WHERE约束 267

7.3.5 编辑DataLists中的项 270

7.4 FormView控件 272

7.4.1 对DataSource分页 272

7.4.2 用列专用的文本代替空值 273

7.4.3 编辑、添加和删除记录 274

7.4.4 添加Command按钮 275

7.5 GridView控件 277

7.5.1 将BoundField转换为

EditItemTemplate字段 278

7.5.2 用DropDownList代替

TextBoxes,以进行编辑 280

7.5.3 用ImageField设计

GridView 281

7.5.4 缩放图像渲染 284

7.6 DetailsView控件 285

7.6.1 使子表GridView与

DetailsView同步 286

7.6.2 使复合主键值可编辑 286

7.6.3 赋默认值并处理更新和

插入错误 287

7.6.4 用QueryString将

DetailsView页面链接到

GridView页面 288

7.7 小结 289

第8章 高级ASP.NET 2.0数据技术

应用 291

8.1 在数据绑定控件中验证输入 291

8.1.1 ASP.NET 2.0验证控件 292

8.1.2 新增的ValidationGroup

属性 293

8.1.3 共享的其他验证属性 293

8.2 验证GridView编辑 294

8.2.1 向GridView控件添加所

需要的字段验证 295

8.2.2 用RegularExpressionValidator

验证CustomerID输入 296

8.2.3 用RangeValidator测试

EmployeeID值 297

8.2.4 对数据输入执行

RangeValidator和

RegularExpressionValidator 297

8.2.5 用CompareValidator防止

不合理的输入 299

8.2.6 添加CustomValidator控件 299

8.2.7 提供验证概述消息 302

8.3 验证DetailsView控件 303

8.3.1 在Web 服务器上验证

ProductID编辑 303

8.3.2 在客户端测试重复的

ProductID值 304

8.4 用ObjectDataSources代替

SqlDataSources 305

8.4.1 DataTables的

ObjectDataSources控件 306

8.4.2 来自类型化DataSet DALC

的ObjectDataSources 313

8.4.3 自定义业务对象的

ObjectDataSources 315

8.5 用XmlDataSource读XML

文件 322

8.5.1 通过XML文档创建

XmlDataSources 322

8.5.2 用Orders.xml填充GridView

控件 324

8.5.3 用XmlDataSource设计

Repeater控件 325

8.5.4 用表格式数据填充

TreeView 327

8.6 跟踪Web页面来比较

DataSource控件的性能 329

8.7 向IIS部署建立的Web站点 330

8.7.1 为自己的站点创建虚拟

目录 331

8.7.2 将Web站点复制到虚拟目录

文件夹 331

8.7.3 发布预编译Web站点 333

8.8 小结 334

第9章 发布数据驱动的Web服务 335

9.1 Web服务开发战略 336

9.1.1 事务 336

9.1.2 DataSet控件 336

9.1.3 自定义业务对象 337

9.1.4 多个WebMethod和版本

登记 337

9.1.5 Web服务的安全性 338

9.2 ASP.NET 2.0 Web服务编程 339

9.2.1 Web Service帮助页面与

WSDL文档 340

9.2.2 Web服务部署 345

9.2.3 Web服务客户端和代理 345

9.3 创建并部署简单数据Web

服务 350

9.3.1 Web服务连接字符串 350

9.3.2 添加通用过程来返回

类型化DataSet 352

9.3.3 添加WebMethod来定义并

返回DataSet 354

9.4 向Web服务客户端添加

DataGridViews 355

9.5 更新Web服务DataSet 357

9.6 用自定义业务对象代替

DataSet 359

9.6.1 业务对象Web服务 359

9.6.2 向DataGridViews绑定

对象数组 365

9.6.3 创建ASP.NET业务对象Web

服务客户端 371

9.7 小结 372

第IV部分 SQL Server 2005

和ADO.NET 2.0

第10章 从SQL Server 2000升级

到2005 375

10.1 SQL Server 2005的版本 375

10.1.1 Express Edition 376

10.1.2 Developer Edition 377

10.1.3 Workgroup Edition 377

10.1.4 Standard Edition 378

10.1.5 Enterprise Edition 378

10.1.6 Mobile Edition 378

10.2 SQL Server 2005新功能

简介 378

10.2.1 新的或升级的管理工具 379

10.2.2 报表服务 383

10.2.3 CLR集成 384

10.2.4 xml数据类型和Xquery

实现 384

10.2.5 SQL Server 2005的Xquery

语法、SQL本地客户端 385

10.2.6 多活动结果集(MARS) 386

10.2.7 数据有效性和可靠性的

增强 387

10.2.8 T-SQL和数据库引擎的

增强 387

10.2.9 服务代理 395

10.2.10 通知服务 399

10.2.11 查询通知 400

10.2.12 数据库邮件 400

10.2.13 SQL Server本地SOAP

Web服务 401

10.3 自定义FOR XML查询 403

10.3.1 用FOR XML RAW查询

添加根元素和嵌套的XML

架构 403

10.3.2 采用FOR XML PATH

架构的微调文档结构 406

10.4 分析PIVOT和UNPIVOT

操作符 411

10.4.1 创建源表 412

10.4.2 使用PIVOT操作符 412

10.4.3 用公共表表达式代替

源表 414

10.4.4 非数据透视交叉表报表 415

10.5 处理查询通知 416

10.5.1 添加SqlDependency

通知 417

10.5.2 创建SqlNotificationRequest

对象和订阅 420

10.5.3 用数据库邮件自动进行

重排序处理 423

10.6 消耗SQL Server本地Web

服务 425

10.7 小结 427

第11章 创建SQL Server项目 429

11.1 SQL Server项目简介 429

11.1.1 实现CLR集成的命令 430

11.1.2 用于SQL Server项目的

属性修饰 430

11.1.3 Visual Studio 2005 SQL

Server项目模板 430

11.2 SqlServerProjectCLR示例

项目 431

11.2.1 用于SQL Server对象的

代码 432

11.2.2 测试脚本 437

11.2.3 创建程序集指令 438

11.2.4 创建ObjectType指令 439

11.2.5 抛弃SQL/CLR对象 442

11.2.6 调试SQL Server项目 442

11.3 设计SQL/CLR存储过程 444

11.3.1 返回依赖于内容的

SqlDataRecords 444

11.3.2 用XmlWriter生成XML

文档 447

11.3.3 对项目产品销售进行线性

回归分析 456

11.4 创建自定义类型 463

11.4.1 用于结构和类的Native

格式的UDT代码 464

11.4.2 自定义格式的UDT类

代码 467

11.4.3 简单值类型UDT 468

11.5 对表添加UDT列 471

11.5.1 利用UDT列显示表行 472

11.5.2 用SqlDataReader返回

UDT值 473

11.6 使用复杂的自定义格式

的UDT 474

11.6.1 AddressBasic UDT 475

11.6.2 验证地址UDT的方法 478

11.6.3 用WHERE约束和ORDER

BY子句测试地址UDT 479

11.6.4 利用UDT查询从其他

字段或表访问数据 480

11.6.5 用XmlTextWriter生成

格式规范的XML 481

11.7 小结 483

第12章 分析xml数据类型 485

12.1 选择合理的xml数据模型 486

12.1.1 非类型化xml列 487

12.1.2 类型化xml列 490

12.1.3 索引式xml列 494

12.2 探究AdventureWorks的

xml列 497

12.3 执行XQuery表达式 499

12.3.1 用于xml列的XQuery

方法 500

12.3.2 FLWOR XQuery表达式 506

12.3.3 通过代码执行XQuery

表达式 511

12.4 数据模型选择对性能的

影响 512