《C#数据库编程实战经典》PDF下载

  • 购买积分:21 如何计算积分?
  • 作  者:(美)白著
  • 出 版 社:北京:清华大学出版社
  • 出版年份:2011
  • ISBN:9787302263494
  • 页数:768 页
图书介绍:本书详细介绍了Visual C#.NET 2008进行数据库编程和开发关系型数据库时应考虑的问题及相关的技术及技巧。

第1章 本书概述 1

第2章 数据库简介 9

2.1什么是数据库和数据库程序 10

2.1.1文件处理系统 10

2.1.2集成数据库 10

2.2开发数据库 12

2.3示例数据库 13

2.3.1关系数据模型 16

2.3.2实体-关系模型(ER模型) 16

2.4键 17

2.4.1主键和实体完整性 17

2.4.2候选键 17

2.4.3外键和参照完整性 17

2.5定义关系 18

2.6 ER表示法 21

2.7数据规范化 21

2.7.1第一范式(1NF) 22

2.7.2第二范式(2NF) 22

2.7.3第三范式(3NF) 23

2.8一些主流数据库中的数据库对象 24

2.8.1 Access中的数据库对象 25

2.8.2 SQL Server中的数据库对象 26

2.8.3 Oracle中的数据库对象 29

2.9创建Microsoft Access 2007示例数据库 32

2.9.1创建表LogIn 32

2.9.2创建表Faculty 34

2.9.3创建其他表 35

2.9.4创建表之间的关系 38

2.10创建Microsoft SQL Server 2005示例数据库 40

2.10.1创建表LogIn 42

2.10.2创建表Faculty 43

2.10.3创建其他表 44

2.10.4创建表之间的关系 48

2.11创建Oracle DatabaselOg示例数据库 54

2.11.1创建Oracle用户数据库 55

2.11.2向Oracle用户数据库添加新表 56

2.11.3创建表之间的约束 67

2.12本章小结 73

第3章 ADO.NET简介 77

3.1 ADO与ADO.NET 77

3.2 ADO.NET 2.0概述 78

3.3 ADO.NET 2.0的架构 79

3.4 ADO.NET 2.0的组件 80

3.4.1数据提供程序 80

3.4.2 Connection类 83

3.4.3 Command类和Parameter类 87

3.4.4 DataAdapter类 95

3.4.5 DataReader类 97

3.4.6 DataSet组件 100

3.4.7 DataTable组件 105

3.4.8 ADO.NET 3.5 EntityFramework 110

3.5本章小结 123

第4章 LlNQ简介 129

4.1 LINQ概述 129

4.1.1 LINQ中使用的一些特殊接口 130

4.1.2标准查询操作符 132

4.1.3延迟的标准查询操作符 133

4.1.4非延迟的标准查询操作符 136

4.2 LINQ查询介绍 139

4.3 LINQ的架构和组件 141

4.3.1 LINQ to Objects概述 142

4.3.2 LINQ to DataSet概述 143

4.3.3 LINQ to SQL概述 144

4.3.4 LINQ to Entities概述 144

4.3.5 LINQ to XML概述 145

4.4 LINQ to Objects 145

4.4.1 LINQ与ArrayList 145

4.4.2 LINQ与字符串 147

4.4.3 LINQ与文件目录 151

4.4.4 LINQ与反射 153

4.5 LINQ TO DataSet 155

4.5.1操作DataSet对象 155

4.5.2使用扩展方法操作DataRow对象 166

4.5.3操作DataTable对象 169

4.6 LINQ TO SQL 170

4.6.1 LINQ to SQL实体类和DataContext类 171

4.6.2 LINQ to SQL数据库操作 174

4.6.3 LINQ to SQL实例 181

4.7 LINQ TO Entities 181

4.7.1对象服务组件 182

4.7.2 ObjectContext组件 182

4.7.3 ObjectQuery组件 182

4.7.4 LINQ to Entities的执行流 182

4.7.5 LINQ to Entities实例 184

4.8 LINQ to XML 185

4.8.1 LINQ to XML中类的层次结构 185

4.8.2操纵XML元素 186

4.8.3操纵XML特性 190

4.8.4使用LINQ to XML查询XML 191

4.9 C# 3.0针对LINQ的语言增强特性 195

4.9.1 Lambda表达式 196

4.9.2扩展方法 197

4.9.3隐式类型局部变量 198

4.9.4查询表达式 199

4.10本章小结 200

第5章 使用Visual C#.NET查询数据 205

5.1完成后的简单数据库实例 206

5.2 Visual Studio 2008设计工-具和向导 209

5.2.1 Toolbox工具箱中的数据设计工具 209

5.2.2 Data Sources窗格中的数据设计向导 212

5.3使用SQL Server创建一个简单的数据库项目——SelectWizard 218

5.4添加和使用Visual Studio中的向导和设计工具 226

5.5使用DataGridView控件查询并显示数据 230

5.5.1查看全表 230

5.5.2查看每一条记录或特定的列 232

5.6使用数据集设计器编辑DataSet的结构 233

5.7将数据绑定到LogIn窗体中的控件 235

5.8开发使用FillO方法查询数据的代码 237

5.9在LogIn窗体中使用返回单个值的查询检索数据 240

5.10为Selection窗体编写代码 242

5.11将数据绑定到Faculty窗体中相应的控件 244

5.12编写从Faculty表中查询数据的代码 245

5.12.1编写使用SQL SELECT方法查询数据的代码 246

5.12.2编写使用LINQ方式查询数据的代码 248

5.13在Faculty窗体中显示图片 248

5.14将数据绑定到Course窗体中的相应控件 250

5.15为Course窗体编写数据查询代码 254

5.15.1使用TableAdapter方法从Course表中查询数据 254

5.15.2使用LINQ方法从Course表中查询数据 256

5.16使用Oracle数据库创建一个简单的数据库项目——SelectWizardOracle 258

5.16.1创建一个新的Visual C#项目——SelectWizardOracle 258

5.16.2选择并添加Oracle Database 10g XE作为数据源 259

5.17运行时对象简介 262

5.18使用运行时对象查询Microsoft Access 2007数据库中的数据 264

5.18.1在LogIn窗体中使用运行时对象查询数据 265

5.18.2为Selection窗体编写代码 270

5.18.3在Faculty窗体中使用运行时对象查询数据 272

5.18.4在Course窗体中使用运行时对象查询数据 278

5.18.5在Student窗体中使用运行时对象查询数据 287

5.19使用运行时对象查询SQL Server数据库 296

5.19.1从Access迁移到SQL Server和Oracle数据库 296

5.19.2使用运行时对象查询数据 299

5.19.3使用LINQ to SQL技术查询数据 332

5.20使用Oracle数据库运行时对象查询数据 347

5.20.1 Oracle Database 10gExpress Edition Release 2 347

5.20.2配置Oracle数据库的连接字符串 348

5.20.3使用运行时对象查询数据 349

5.21本章小结 370

第6章 使用Visual C#.NET执行数据插入 377

6.1将新数据插入到数据库 378

6.1.1使用TableAdapter.InsertO方法将新记录插入到数据库中 379

6.1.2使用TableAdapter.UpdateO方法将新记录插入到数据库中 379

6.2示例项目InsertWizard:将数据插入到Microsoft Access数据库中 380

6.2.1基于SampleWizards项目创建一个新项目 380

6.2.2应用程序的用户界面 380

6.2.3创建Insert Faculty窗体 381

6.2.4复制Visual C#.NET项目和DataSet 383

6.2.5在插入数据之前验证数据 384

6.2.6数据插入的初始化和结束代码 388

6.2.7构造Insert查询 389

6.2.8开发使用TableAdapter.InsertO方法插入数据的代码 391

6.2.9开发使用TableAdapter.UpdateO方法插入数据的代码 393

6.2.10在执行完插入操作之后验证所插入的数据 397

6.3示例项目SQLInsertWizard:将数据插入到SQL Server数据库中 403

6.3.1将现有项目修改为一个新的数据插入项目 403

6.3.2创建一个在Course窗体中插入数据的新窗体 404

6.3.3打开并连接到Visual Studio设计工具 406

6.3.4在插入数据之前初始化项目并检验数据 407

6.3.5配置TableAdapter以创建数据插入查询 410

6.3.6开发使用TableAdapte.InsertO方法执行数据插入的代码 411

6.3.7开发使用TableAdapter.UpdateO方法执行数据插入的代码 414

6.3.8使用Course窗体中的Select按钮进行数据验证 416

6.3.9使用存储过程将数据插入到数据库中 417

6.4示例项目OracleInsertWizard:将数据插入到Oracle数据库中 420

6.5运行时对象方法 421

6.6使用运行时对象将数据插入到SQL Server数据库中 422

6.6.1添加数据插入窗体:Insert Faculty窗体 422

6.6.2修改复制项目中的代码 423

6.6.3编写初始代码以及在插入数据之前检验数据的代码 424

6.6.4将数据插入到Faculty表中 427

6.6.5在数据插入后验证数据 431

6.7使用运行时对象将数据插入到Microsoft Access数据库中 437

6.7.1修改名称空间 438

6.7.2移除SP窗体和Student窗体 438

6.7.3修改数据库的连接字符串 439

6.7.4修改登录查询字符串 441

6.7.5修改查询Facul表的查询字符串 442

6.7.6修改其他窗体 443

6.8使用运行时对象将数据插入到Oracle数据库中 445

6.8.1添加Oracle引用以及对Oracle名称空间的引用 445

6.8.2修改项目的名称空间 446

6.8.3修改数据库连接 447

6.8.4修改登录查询字符串 448

6.8.5修改查询Faculty表的查询字符串 449

6.8.6修改其他窗体 450

6.9使用LINQ查询将数据插入到数据库中 451

6.10使用存储过程将数据插入到数据库中 452

6.10.1使用存储过程将数据插入到SQL Server数据库中 452

6.10.2使用存储过程将数据插入到Oracle数据库中 461

6.11本章小结 468

第7章 使用Visual C#.NET更新和删除数据 473

7.1更新或删除数据库中的数据 474

7.1.1更新或删除DataSet中相关表的数据 474

7.1.2使用TableAdapter DBDirect方法更新或删除数据库中的数据——TableAdapter.UpdateO方法和TableAdapter.DeleteO方法 475

7.1.3使用TableAdapter.UpdateO方法更新或删除数据库中的数据 476

7.2更新或删除Microsoft Access数据库中的数据 477

7.2.1基于InsertWizard项目创建新项目 477

7.2.2开发应用程序的用户界面 477

7.2.3在更新或删除之前检查数据 479

7.2.4创建更新或删除查询 479

7.2.5开发使用TableAdapterDBDirect方法更新数据的代码 481

7.2.6开发使用TableAdapter.UpdateO方法更新数据的代码 482

7.2.7使用TableAdapter DBDirect方法开发删除数据的代码 484

7.2.8开发使用TableAdapter.UpdateO方法删除数据的代码 485

7.2.9在数据更新和删除之后验证数据 486

7.3更新或删除SQL Server数据库中的数据 487

7.4更新或删除Oracle数据库中的数据 490

7.5运行时对象方法 491

7.6使用运行时对象更新或删除SQL Server数据库中的数据 492

7.6.1更新SQL Server数据库中Faculty表的数据 493

7.6.2从SQL Server数据库的Faculty表中删除数据 496

7.7使用运行时对象更新或删除Oracle数据库中的数据 500

7.7.1添加对Oracle名称空间的引用 501

7.7.2修改LogIn窗体中的连接字符串和查询字符串 501

7.7.3修改Faculty窗体中的查询字符串 502

7.7.4修改Course窗体的查询字符串 503

7.7.5其他修改 504

7.8使用存储过程更新和删除数据库中的数据 505

7.8.1使用存储过程更新和删除Access数据库中的数据 506

7.8.2使用存储过程更新或删除SQL Server数据库中的数据 512

7.8.3在Oracle数据库中使用存储过程更新或删除数据 519

7.9使用LINQ to SQL更新或删除数据库中的数据 526

7.9.1创建DataContext对象 528

7.9.2编写Select按钮的单击事件处理程序 528

7.9.3编写Update按钮的单击事件处理程序 529

7.9.4编写Delete按钮的单击事件处理程序 530

7.10本章小结 531

第8章 在ASP.NET中访问数据 537

8.1 NET Framework简介 537

8.2 ASP.NET和AS.NET 3.5简介 539

8.2.1 ASP.NET Web应用程序的文件结构 541

8.2.2 ASP.NET的执行模型 541

8.2.3当Web应用程序执行时实际发生的过程 542

8.2.4测试和运行Web项目的条件 542

8.3开发ASP.NET Web应用程序,选取并显示SQL Server数据库中的数据 544

8.3.1创建用户界面——LogIn窗体 545

8.3.2开发用来访问数据库并获取数据的代码 546

8.3.3在客户端验证数据 549

8.3.4创建第2个用户界面——Selection页面 550

8.3.5开发打开其他Web页面的代码 551

8.3.6创建第3个用户界面——Faculty页面 553

8.3.7开发用来选取教员信息的代码 555

8.3.8创建第4个用户界面——Course页面 561

8.3.9开发用来选取指定课程信息的代码 564

8.4开发ASP.NET Web应用程序,将数据插入到SQL Server数据库中 570

8.4.1创建新的Web页面Insert.aspx 571

8.4.2开发用来执行数据插入功能的代码 572

8.4.3编写Page_LoadO方法和Back按钮的单击事件处理程序 572

8.4.4编写Insert按钮的单击事件处理程序 573

8.4.5编写其他方法的代码 575

8.4.6验证数据插入操作 576

8.5开发Web应用程序,更新或删除数据SQL Server数据库中的数据 579

8.5.1应用程序的用户界面 579

8.5.2修改Faculty页面的代码 580

8.5.3编写Update按钮的单击事件处理程序 581

8.5.4编写Delete按钮的单击事件处理程序 584

8.6使用LINQ to SQL查询开发ASPNET Web应用程序 589

8.6.1创建一个新的Web窗体 590

8.6.2创建一个新的DataContext对象 592

8.6.3编写数据选取查询的代码 593

8.6.4编写数据插入查询的代码 594

8.6.5编写数据更新或删除查询的代码 594

8.7开发ASP.NET Web应用程序,从Oracle数据库中选取数据 597

8.7.1修改LogIn页面中的连接字符串和Connection对象 597

8.7.2修改LogIn页面中的查询字符串 599

8.7.3修改Faculty页面中的查询字符串 599

8.7.4修改Course页面中的查询字符串 601

8.8开发ASP.NET Web应用程序,向Oracle数据库中插入数据 603

8.8.1在Faculty页面中添加两个控件 604

8.8.2修改Faculty页面中一些方法的代码 605

8.8.3在Faculty页面中创建插入新教员信息的代码 607

8.9开发ASP.NET Web应用程序,更新或删除Oracle数据库中的数据 610

8.9.1修改项目,执行数据更新操作 610

8.9.2开发存储过程,执行数据删除操作 612

8.10本章小结 618

第9章 ASP.NETWeb服务 623

9.1 Web服务及其组件 623

9.2创建Web服务的过程 625

9.2.1 Web服务项目的典型结构 625

9.2.2创建Web服务项目时需要实际考虑的问题 626

9.2.3创建ASP.NET Web服务的过程 627

9.3创建ASP.NET Web服务项目,访问SQL Server数据库 627

9.3.1新Web服务项目中创建的文件和项目 628

9.3.2HelloWorld Web服务项目的运行效果 630

9.3.3修改默认的Web服务项目 633

9.3.4为Web服务创建一个处理错误检查的基类 634

9.3.5创建实际的Web服务类 635

9.3.6在Web服务类中添加Web方法 636

9.3.7为Web方法编写代码以执行Web服务 636

9.3.8开发存储过程以执行数据查询 643

9.3.9在Web方法中使用DataSet作为返回对象 645

9.3.10创建基于Windows的Web服务客户端以使用Web服务 648

9.3.11创建一个基于Web的Web服务客户端以使用Web服务 656

9.3.12将开发完成的Web服务部署到产品级服务器上 662

9.4创建ASP.NET Web服务项目,将数据插入到SQL Server数据库中 665

9.4.1修改已有的Web服务项目 666

9.4.2 Web服务项目的开发过程 666

9.4.3开发和修改后台代码文件 667

9.4.4创建基于Windows的Web服务客户端以使用Web服务 682

9.4.5创建基于Web的Web服务客户端以使用Web服务 683

9.5创建ASP.NET Web服务项目,更新或删除SQL Server数据库中的数据 694

9.5.1修改已有的Web服务项目 694

9.5.2修改相关的Web方法 695

9.5.3开发两个存储过程:WebUpdateCourseSP和WebDeleteCourseSP 701

9.6创建基于Windows的Web服务客户端以使用Web服务 711

9.7创建基于Web的Web服务客户端以使用Web服务 712

9.7.1创建新的网站项目并添加已有的Web页面 712

9.7.2添加Web服务引用并修改Web窗体 713

9.7.3修改相关方法的代码 714

9.8创建ASP.NET Web服务项目以访问Oracle数据库 721

9.8.1创建Web服务项目WebServiceOracleSelect 722

9.8.2修改连接字符串 723

9.8.3修改名称空间列表 723

9.8.4修改Web方法GetSQLSelect及相关方法 724

9.8.5修改Web方法GetSQLSelectSP及相关方法 725

9.8.6修改Web方法GetSQLSelectDataSet 731

9.9创建Web服务客户端以使用Web服务WebService-OracleSelect 734

9.10创建ASP.NET Web服务项目,将数据插入到Oracle数据库中 735

9.10.1创建Web服务项目WebServiceOracleInsert 735

9.10.2修改连接字符串 736

9.10.3修改名称空间列表 736

9.10.4修改Web方法SetSQLInsertSP及相关方法 736

9.10.5修改Web方法GetSQLInsert及相关方法 738

9.10.6修改Web方法SQLInseDataSe 740

9.10.7修改Web方法GetSQLInsertCourse及相关方法 741

9.11创建Web服务客户端以使用Web服务WebServiceOracleInsert 749

9.12创建ASP.NET Web服务项目,更新或删除Oracle数据库中的数据 750

9.12.1创建Web服务项目WebServiceOracle-UpdateDelete 750

9.12.2修改连接字符串 751

9.12.3修改名称空间列表 751

9.12.4修改Web方法SQLUpdateSP及相关方法 751

9.12.5修改Web方法GetSQLCourse及相关方法 756

9.12.6修改Web方法GetSQLCourseDetail及相关方法 757

9.12.7修改Web方法SQLDeleteSP 759

9.13创建Web服务客户端项目以使用Web服务 764

9.14本章小结 765