《Visual Basic 2005数据库编程》PDF下载

  • 购买积分:16 如何计算积分?
  • 作  者:(美)詹尼斯(Jennings,R.)著;崔洪斌,王爱民译
  • 出 版 社:北京:清华大学出版社
  • 出版年份:2006
  • ISBN:7302137579
  • 页数:527 页
图书介绍:本书介绍VB编程的技巧和方法。

第Ⅰ部分 ADO.NET 2.0基础知识 3

第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.1 使用新的ADO.NET 2.0运行时Windows窗体对象 35

第2章 ADO.NET 2.0新功能介绍 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.1 ADO.NET 1.x与2.0的数据设计器比较 64

2.2 使用ADO.NET 2.0的新持久性Windows窗体对象 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.1 .NET数据访问体系结构指南 90

3.4 遵循设计指南 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 Server2000最佳实践分析器 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.6 利用sp_executesql和命名参数重新使用缓存的查询计划 114

3.10.5 为不需要的参数添加默认值 114

3.10.4 用存储过程代替SQL批量查询 114

3.10.7 向开放式并发控件添加timestamp列 115

3.10.8 在并发测试中检验所有关联记录 118

3.10.9 通过批量更新减少服务器往返行程 118

3.10.10 利用客户端验证避免SqlExceptions 118

3.11 小结 119

第Ⅱ部分 Windows窗体和控件中的数据绑定 123

第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 格式化并添加DataGridView列 131

4.2.1 设置OrdersDataGridView列的格式 131

4.2.2 格式化Order_DetailsDataGridView并添加计算列 132

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

4.3 为新记录提供默认值 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 添加和绑定CustomerIDBindingSource 155

4.9.2 用DataRowView测试重复性 156

4.10 对编辑应用业务规则 157

4.11 将更改保存到基表 159

4.11.1 维护引用的完整性 159

4.11.2 创建并测试UpdateBaseTables函数 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.1 创建和管理脱机DataSet 198

5.4 容纳非连接用户 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.2 为TableAdapters添加部分类 216

6.3.1 由TOP n查询返回的限制行 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

第Ⅲ部分 ASP.NET 2.0中的数据绑定 251

第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 绑定控件值的DataSourceWHERE约束 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.4 对数据输入执行RangeValidator和RegularExpressionValidator 297

8.2.3 用RangeValidator测试EmployeeID值 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.2 将Web站点复制到虚拟目录文件夹 331

8.7.1 为自己的站点创建虚拟目录 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.1 业务对象Web服务 359

9.6 用自定义业务对象代替DataSet 359

9.6.2 向DataGridViews绑定对象数组 365

9.6.3 创建ASP.NET业务对象Web服务客户端 371

9.7 小结 372

第Ⅳ 部分SQL Server 2005和ADO.NET 2.0 375

第10章 从SQL Server 2000升级到2005 375

10.1 SQL Server 2005的版本 375

10.1.1 Express Edition 376

10.1.3 Workgroup Edition 377

10.1.2 Developer 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.1 用FOR XML RAW查询添加根元素和嵌套的XML架构 403

10.3 自定义FOR 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

12.4.1 创建并填充SalesOrders和SalesOrderItem表 514

12.4.2 填充SalesOrders表的OrdersXML1列和OrdersXML2列 515

12.4.3 评估对UPDATE进行XML索引的效果 517

12.4.4 分析XQuery性能的改进 518

12.5 小结 527