《ADO.NET本质论》PDF下载

  • 购买积分:13 如何计算积分?
  • 作  者:(美)Bob Beauchemin著;周靖译
  • 出 版 社:北京:清华大学出版社
  • 出版年份:2003
  • ISBN:7302072817
  • 页数:358 页
图书介绍:本书针对.NET框架开发人员,介绍了如何构建数据库,如何把数据访问机制结合到应用程序中。书中在揭示ADO.NET新特性的同时,还对其他数据访问API(如OLEOB,ADO,ODBC和JDBC)进行了横向比较,为开发人员提供了转换到ADO.NET的迁移路径。本书是新的Microsoft平台中ADO.NET的关键参考,不仅可供数据库和应用程序开发人员参考和自学,也可用作数据库培训课程配套教材。

第1章 数据:模型、应用程序和API 1

1.1 信息、数据建模和数据库 1

1.2 数据库和API基础 2

1.3 关系模型 4

1.3.1 关系设计规则 4

1.3.2 关系模型的优点 5

1.3.3 ADO.NET对关系模型的支持 6

1.4 层次结构、对象和混合 6

1.4.1 现代的非关系数据 8

1.4.2 多维数据 8

1.4.3 非关系数据和ADO.NET 9

1.4.4 XML和信息集 9

1.4.5 XML、数据库和统一数据表示 10

1.5 以数据的中心的应用程序模型 11

1.6 数据访问API的发展历程 13

1.7 小结 16

第2章 ADO.NET基础 17

2.1 数据访问和.NET体系结构 17

2.2 两种数据访问模式 18

2.3 连接模式 19

2.3.1 OleDb和SqlClient数据提供程序 23

2.3.2 使用ADO.NET数据提供程序编写泛型数据访问代码 24

2.3.3 数据提供程序模型中的游标 28

2.4 断开模式和DataSet 28

2.5 .NET中的XML API 31

2.5.1 流式XML 32

2.5.2 XML架构 35

2.5.3 XmlDocument,XPath和XPathNavigator 37

2.5.4 XML和数据提供程序的混合 41

2.6 托管数据类的布局 45

2.7 小结 47

3.1 .NET数据提供程序和连接模型 48

第3章 连接模型:流式数据访问 48

3.2 连接类 49

3.3 连接池 50

3.4 元数据方法 51

3.5 Command类 53

3.6 使用参数 57

3.7 命令的准备、取消、超时和清除 64

3.8 通过DataReader进行流式数据传输 65

3.9 通过IDataRecord读取列值 68

3.10 错误处理 72

3.11 使用事务处理 75

3.11.1 分布式事务处理 78

3.11.2 连接池的工作原理 81

3.11.3 声明性事务处理的工作原理 85

3.12 Permission类 88

3.13 小结 89

4.1.1 DataSet作为驻留内存的数据库 90

第4章 DataSet类:关系数据的集合 90

4.1 DataSet 90

4.1.2 DataSet的用途 91

4.2 DataSet对象模型 91

4.2.1 DataColumn,DataRow和DataTable 92

4.2.2 Data Table及其用法 95

4.2.3 DataRow 96

4.2.4 键、关系和约束 98

4.2.5 通过关系来导航:Select和Find 101

4.2.6 行的添加、获取、更改和删除 103

4.2.7 合并更改 107

4.2.8 合并DataSet 108

4.2.9 DataRow的状态和版本 109

4.2.10 规则和关系 113

4.2.11 错误处理 115

4.2.12 事件 117

4.2.13 DataSet和非关系类型 122

4.3 定义信息架构 124

4.4 小结 125

第5章 DataAdapter:数据库和DataSet的同步 127

5.1 乐观并发性 127

5.2 DataAdapter类 128

5.3 从托管提供程序中填充DataSet 129

5.3.1 在Fill中使用架构和映射信息 131

5.3.2 执行DataAdapter.Fill期间的错误处理 135

5.4 DataAdapter.Fill的工作原理 136

5.5 OleDbDataAdapter中的ADO集成 140

5.6 通过DataAdapter更新数据库 141

5.6.1 CommandBuilder类 143

5.6.2 直接编写更新逻辑 148

5.7 Update的工作原理 153

5.8 DataSet事件模型 154

5.9 编写常规自定义命令 157

5.9.1 ADOX CommandBuilder 157

5.9.2 构造批处理更新命令 158

5.10 再论DataSet和非关系数据类型 158

5.11 应该使用DataSet还是DataReader 159

5.12 小结 160

第6章 数据绑定:ADO.NET和GUI 162

6.1 Windows窗体和Web窗体 162

6.2 数据表示模式 163

6.3 使用数据绑定控件 164

6.3.1 Web窗体数据绑定类型 165

6.3.2 数据绑定控件类型解析 167

6.3.3 同DataReader绑定 173

6.4 用DataSet进行数据绑定 175

6.5 DataView和通用转换 177

6.6 表和列映射 183

6.7 可编辑的列表控件:DataList和DataGrid 184

6.7.1 DataList 185

6.7.2 DataGrid 187

6.8 非关系数据和DataView 191

6.9 与Visual Studio的集成 192

6.10 控件和数据窗体 195

6.11 小结 196

第7章 XML和数据访问的集成 197

7.1 XML和传统数据访问 197

7.2 XML和ADO.NET 198

7.2.1 定义DataSet的架构 198

7.2.2 优化DataSet的XML架构 202

7.2.3 将XML读入DataSet 205

7.2.4 从DataSet写入XML架构 208

7.2.5 Microsoft特有的批注 210

7.2.6 从DataSet写入XML数据 211

7.3 序列化、封送和DataSet 216

7.4 类型化的DataSet 219

7.5 XmlDataDocument类 234

7.5.1 XmlDataDocument和DataSet 235

7.5.2 XmlDataDocument和DataDocumentXPathNavigator 240

7.6 数据库和XML的重要意义 241

7.6.1 XML作为一种特定类型 242

7.6.2 文档合成与分解 242

7.7 SQL Server、XML和托管数据访问 242

7.7.1 FOR XML关键字 243

7.7.2 OpenXML 244

7.7.3 SQLOLEDB提供程序 244

7.7.4 SqlXml托管类 244

7.7.5 SQLXML Web应用程序 244

7.7.6 updategram 244

7.8 使用SQLXML和.NET 246

7.7.9 未来的支持 246

7.7.8 批量加载 246

7.7.7 SQLXMLOLEDB提供程序中的FOR XML 246

7.9 小结 253

第8章 提供程序:ADO.NET和数据提供程序 254

8.1 如何选择 254

8.2 保留OLE DB:OLE DB概念总结 255

8.3 保留OLE DB:与OleDb数据提供程序交互 257

8.3.1 主要的共型和类型映射 259

8.3.2 访问程序 259

8.3 执行命令、返回结果和使用OpenRowset 259

8.3.4 Command的最终格式和行为 260

8.3.5 Command Dialect 260

8.3.6 层次化数据 261

8.3.7 从Rowset更新 261

8.3.8 错误 261

8.3.9 不支持的功能 261

8.3.10 支持和不支持的提供程序 262

8.4 编写数据提供程序 265

8.5 实现Connection类 266

8.5.1 规格 267

8.5.2 实现 268

8.5.3 特殊化 268

8.6 实现Command类 268

8.6.1 规格 269

8.6.2 实现 270

8.6.3 特殊化 271

8.7 实现DataReader类 271

8.7.1 规格 272

8.7.2 实现 273

8.7.3 特殊化 275

8.8 实现DataAdapter类 275

8.8.1 规格 275

8.8.3 特殊化 276

8.8.2 实现 276

8.9 添加增强功能 277

8.10 实现XML Infoset提供程序 278

8.11 实现XmlReader 280

8.12 实现XPathNavigator 284

8.13 其他实现方案:总结 286

8.14 论证大一统访问模型的可行性 288

8.15 小结 289

第9章 消费者的ADO.NET迁移路径 290

9.1 ADO.NET迁移路径 290

9.2 面向OLE DB程序员的ADO.NET 291

9.2.1 cotype等价物 291

9.2.2 数据提供程序的透明性 291

9.2.3 使用提供程序特有的功能 293

9.2.4 错误处理 293

9.2.5 系统提供的服务 293

9.2.8 封送 294

9.2.6 系统提供的组件 294

9.2.7 服务提供程序 294

9.3 ADO概述 295

9.4 面向ADO程序员的ADO.NET 297

9.5 ADO Connection、Command和事务处理 300

9.5.1 连接和连接字符串 300

9.5.2 使用事务处理 301

9.5.3 命令和Command行为 301

9.5.4 层次化数据 301

9.5.5 异步操作 302

9.5.6 属性 302

9.6 ADO.NET与ADO断开模型的比较 302

9.6.1 类的等价物 302

9.6.2 导航 303

9.6.3 ADO.NET中的GetRows有何变化 304

9.6.4 更新 305

9.6.6 批处理更新 306

9.6.7 ADO.NET的DataSet扩展 306

9.6.5 创建更新语句 306

9.6.8 列和表的命名 307

9.6.9 排序和筛选 307

9.7 ADO DB的互操作性 307

9.8 面向ODBC程序员的ADO.NET 314

9.8.1 句柄和环境 315

9.8.2 命令 315

9.8.3 获取数据 316

9.8.4 元数据和架构信息 316

9.8.5 错误 316

9.9 面向JDBC程序员的ADO.NET 320

9.9.1 泛化代码 321

9.9.2 提供程序的类型 321

9.9.5 对象数据库 322

9.9.3 连接池 322

9.9.4 非关系数据类型 322

9.9.6 其他SQL-99扩展 323

9.9.7 元数据 323

9.9.8 事务处理 323

9.9.9 命令和行为 323

9.9.10 执行查询和返回结果 324

9.9.11 服务器游标 324

9.9.12 错误 324

9.10 ADO.NET JDBC程序员和断开模型 329

9.11 SQL/J Part 0和类型化DataSet 329

9.12 小结 330

第10章 ADO.NET和各种数据类型 331

10.1 数据访问的发展历程 331

10.2 ADO.NET和基于服务器及文件的RDBMS 332

10.3 ADO.NET和同种层次结构数据及ORDBMS 334

10.4 ADO.NET和网络数据:对象图、ODBMS与网络DBMS 335

10.5 ADO.NET和结构化文件、多维数据及ORDBMS 336

10.6 ADO.NET平面文件和半结构化文件 337

10.7 小结 338

附录A 数据类型和类型映射 339

A.1 DbType枚举 339

A.2 将SQL Server数据类型映射到SqlType及SqlDbType 340

A.3 将OLE DB DBTYPE映射到.NET数据类型 340

A.4 ODBC类型映射 342

A.5 Parameter.DbType 343

附录B 表达式的语法 345

B.1 用户自定义值 345

B.2 运算符 346

B.3 字符串运算符 346

B.4 通配符 346

B.6 聚合 347

B.5 父/子关系引用 347

B.7 函数 348

附录C 架构推断规则 350

C.1 排除信息 350

C.2 推断过程总结 350

C.3 表 351

C.4 有属性的元素 351

C.5 有子元素的元素 351

C.6 重复元素 352

C.7 列 353

C.8 属性 353

C.9 没有属性或子元素的元素 353

C.10 关系 354

C.11 元素文本 355

C.12 限制 356

参考文献 358