第一图书网

C#数据库编程实战经典

清华大学出版社
出版时间:

2011-11  

出版社:

清华大学出版社  

作者:

白  

页数:

768  

译者:

施宏斌  

内容概要

  本书详细介绍了使用Visual C#.NET 2008进行数据库应用程序设计和开发关系型数据库(比如Microsoft
Access、SQL
Server和Oracle数据库)时应该考虑的问题。与传统图书使用大量代码块进行知识点介绍不同,本书既介绍Visual
Studio.NET提供的设计工具和向导,又介绍运行时对象方法,并结合对60多个实际案例的具体分析,向读者详细介绍了数据库编程的关键技术。

作者简介

  Ying Bai博士是Johnson C.Smith
University(JCSU)计算机科学与工程系的副教授。在加入JCSU之前,Ying
Bai博士曾在美国加利福尼亚州的硅谷以及俄亥俄州的哥伦布市工作过,是自动控制和设备测试方面的高级软件工程师。Ying
Bai博士在机器人控制技术、机器人标定技术和相关的软件编程,以及工业和学术领域的精确测量等方面有着极其丰富的经验。Ying
Bai博士是IEEE的高级成员,也是ACM成员之一。近年来,他已经出版了6本书籍,涵盖多语言接口程序设计、串口程序设计、电子学、模糊逻辑以及VisualBasic.NEE数据库编程等方面。

书籍目录

第1章本书概述
第2章数据库简介
 2.1什么是数据库和数据库程序
  2.1.1文件处理系统
  2.1.2集成数据库
 2.2开发数据库
 2.3示例数据库
  2.3.1关系数据模型
  2.3.2实体-关系模型(er模型)
 2.4键
  2.4.1主键和实体完整性
  2.4.2候选键
  2.4.3外键和参照完整性
 2.5定义关系
 2.6er表示法
 2.7数据规范化
  2.7.1第一范式(1nf)
  2.7.2第二范式(2nf)
  2.7.3第三范式(3nf)
 2.8一些主流数据库中的数据库对象
  2.8.1access中的数据库对象
  2.8.2sqlserver中的数据库对象
  2.8.3oracle中的数据库对象
 2.9创建microsoftaccess2007示例数据库
  2.9.1创建表login
  2.9.2创建表faculty
  2.9.3创建其他表
  2.9.4创建表之间的关系
 2.10创建microsoftsqlserver2005示例数据库
  2.10.1创建表login
  2.10.2创建表faculty
  2.10.3创建其他表
  2.10.4创建表之间的关系
 2.11创建oracledatabase10g示例数据库
  2.11.1创建oracle用户数据库
  2.11.2向oracle用户数据库添加新表
  2.11.3创建表之间的约束
 2.12本章小结
第3章ado.net简介
 3.1ado与ado.net
 3.2ado.net2.0概述
 3.3ado.net2.0的架构
 3.4ado.net2.0的组件
  3.4.1数据提供程序
  3.4.2connection类
  3.4.3command类和parameter类
  3.4.4dataadapter类
  3.4.5datareader类
  3.4.6dataset组件
  3.4.7datatable组件
  3.4.8ado.net3.5entityframework
 3.5本章小结
第4章linq简介
 4.1linq概述
  4.1.1linq中使用的一些特殊接口
  4.1.2标准查询操作符
  4.1.3延迟的标准查询操作符
  4.1.4非延迟的标准查询操作符
 4.2linq查询介绍
 4.3linq的架构和组件
  4.3.1linqtoobjects概述
  4.3.2linqtodataset概述
  4.3.3linqtosql概述
  4.3.4linqtoentities概述
  4.3.5linqtoxml概述
 4.4linqtoobjects
  4.4.1linq与arraylist
  4.4.2linq与字符串
  4.4.3linq与文件目录
  4.4.4linq与反射
 4.5linqtodataset
  4.5.1操作dataset对象
  4.5.2使用扩展方法操作datarow对象
  4.5.3操作datatable对象
 4.6linqtosql
  4.6.1linqtosql实体类和datacontext类
  4.6.2linqtosql数据库操作
  4.6.3linqtosql实例
 4.7linqtoentities
  4.7.1对象服务组件
  4.7.2objectcontext组件
  4.7.3objectquery组件
  4.7.4linqtoentities的执行流
  4.7.5linqtoentities实例
 4.8linqtoxml
  4.8.1linqtoxml中类的层次结构
  4.8.2操纵xml元素
  4.8.3操纵xml特性
  4.8.4使用linqtoxml查询xml
 4.9c#3.0针对linq的语言增强特性
  4.9.1lambda表达式
  4.9.2扩展方法
  4.9.3隐式类型局部变量
  4.9.4查询表达式
 4.10本章小结
第5章使用visualc#.net查询数据
 5.1完成后的简单数据库实例
 5.2visualstudio2008设计工具和向导
  5.2.1toolbox工具箱中的数据设计工具
  5.2.2datasources窗格中的数据设计向导
 5.3使用sqlserver创建一个简单的数据库项目——selectwizard
 5.4添加和使用visualstudio中的向导和设计工具
 5.5使用datagridview控件查询并显示数据
  5.5.1查看全表
  5.5.2查看每一条记录或特定的列
 5.6使用数据集设计器编辑dataset的结构
 5.7将数据绑定到login窗体中的控件
 5.8开发使用fill()方法查询数据的代码
 5.9在login窗体中使用返回单个值的查询检索数据
 5.10为selection窗体编写代码
 5.11将数据绑定到faculty窗体中相应的控件
 5.12编写从faculty表中查询数据的代码
  5.12.1编写使用sqlselect方法查询数据的代码
  5.12.2编写使用linq方式查询数据的代码
 5.13在faculty窗体中显示图片
 5.14将数据绑定到course窗体中的相应控件
 5.15为course窗体编写数据查询代码
  5.15.1使用tableadapter方法从course表中查询数据
  5.15.2使用linq方法从course表中查询数据
 5.16使用oracle数据库创建一个简单的数据库项目——selectwizardoracle
  5.16.1创建一个新的visualc#项目——selectwizardoracle
  5.16.2选择并添加oracledatabase10gxe作为数据源
 5.17运行时对象简介
 5.18使用运行时对象查询microsoftaccess2007数据库中的数据
  5.18.1在login窗体中使用运行时对象查询数据
  5.18.2为selection窗体编写代码
  5.18.3在faculty窗体中使用运行时对象查询数据
  5.18.4在course窗体中使用运行时对象查询数据
  5.18.5在student窗体中使用运行时对象查询数据
 5.19使用运行时对象查询sqlserver数据库
  5.19.1从access迁移到sqlserver和oracle数据库
  5.19.2使用运行时对象查询数据
  5.19.3使用linqtosql技术查询数据
 5.20使用oracle数据库运行时对象查询数据
  5.20.1oracledatabase10gexpresseditionrelease2
  5.20.2配置oracle数据库的连接字符串
  5.20.3使用运行时对象查询数据
 5.21本章小结
第6章使用visualc#.net执行数据插入
 6.1将新数据插入到数据库
  6.1.1使用tableadapter.insert()方法将新记录插入到数据库中
  6.1.2使用tableadapter.update()方法将新记录插入到数据库中
 6.2示例项目insertwizard:将数据插入到microsoftaccess数据库中
  6.2.1基于samplewizards项目创建一个新项目
  6.2.2应用程序的用户界面
  6.2.3创建insertfaculty窗体
  6.2.4复制visualc#.net项目和dataset
  6.2.5在插入数据之前验证数据
  6.2.6数据插入的初始化和结束代码
  6.2.7构造insert查询
  6.2.8开发使用tableadapter.insert()方法插入数据的代码
  6.2.9开发使用tableadapter.update()方法插入数据的代码
  6.2.10在执行完插入操作之后验证所插入的数据
 6.3示例项目sqlinsertwizard:将数据插入到sqlserver数据库中
  6.3.1将现有项目修改为一个新的数据插入项目
  6.3.2创建一个在course窗体中插入数据的新窗体
  6.3.3打开并连接到visualstudio设计工具
  6.3.4在插入数据之前初始化项目并检验数据
  6.3.5配置tableadapter以创建数据插入查询
  6.3.6开发使用tableadapter.insert()方法执行数据插入的代码
  6.3.7开发使用tableadapter.update()方法执行数据插入的代码
  6.3.8使用course窗体中的select按钮进行数据验证
  6.3.9使用存储过程将数据插入到数据库中
 6.4示例项目oracleinsertwizard:将数据插入到oracle数据库中
 6.5运行时对象方法
 6.6使用运行时对象将数据插入到sqlserver数据库中
  6.6.1添加数据插入窗体:insertfaculty窗体
  6.6.2修改复制项目中的代码
  6.6.3编写初始代码以及在插入数据之前检验数据的代码
  6.6.4将数据插入到faculty表中
  6.6.5在数据插入后验证数据
 6.7使用运行时对象将数据插入到microsoftaccess数据库中
  6.7.1修改名称空间
  6.7.2移除sp窗体和student窗体
  6.7.3修改数据库的连接字符串
  6.7.4修改登录查询字符串
  6.7.5修改查询faculty表的查询字符串
  6.7.6修改其他窗体
 6.8使用运行时对象将数据插入到oracle数据库中
  6.8.1添加oracle引用以及对oracle名称空间的引用
  6.8.2修改项目的名称空间
  6.8.3修改数据库连接
  6.8.4修改登录查询字符串
  6.8.5修改查询faculty表的查询字符串
  6.8.6修改其他窗体
 6.9使用linq查询将数据插入到数据库中
  6.10使用存储过程将数据插入到数据库中
  6.10.1使用存储过程将数据插入到sqlserver数据库中
  6.10.2使用存储过程将数据插入到oracle数据库中
  6.11本章小结
第7章使用visualc#.net更新和删除数据
 7.1更新或删除数据库中的数据
  7.1.1更新或删除dataset中相关表的数据
  7.1.2使用tableadapterdbdirect方法更新或删除数据库中的数据——tableadapter.update()方法和tableadapter.delete()方法
  7.1.3使用tableadapter.update()方法更新或删除数据库中的数据
 7.2更新或删除microsoftaccess数据库中的数据
  7.2.1基于insertwizard项目创建新项目
  7.2.2开发应用程序的用户界面
  7.2.3在更新或删除之前检查数据
  7.2.4创建更新或删除查询
  7.2.5开发使用tableadapterdbdirect方法更新数据的代码
  7.2.6开发使用tableadapter.update()方法更新数据的代码
  7.2.7使用tableadapterdbdirect方法开发删除数据的代码
  7.2.8开发使用tableadapter.update()方法删除数据的代码
  7.2.9在数据更新和删除之后验证数据
 7.3更新或删除sqlserver数据库中的数据
 7.4更新或删除oracle数据库中的数据
 7.5运行时对象方法
 7.6使用运行时对象更新或删除sqlserver数据库中的数据
  7.6.1更新sqlserver数据库中faculty表的数据
  7.6.2从sqlserver数据库的faculty表中删除数据
 7.7使用运行时对象更新或删除oracle数据库中的数据
  7.7.1添加对oracle名称空间的引用
  7.7.2修改login窗体中的连接字符串和查询字符串
  7.7.3修改faculty窗体中的查询字符串
  7.7.4修改course窗体的查询字符串
  7.7.5其他修改
 7.8使用存储过程更新和删除数据库中的数据
  7.8.1使用存储过程更新和删除access数据库中的数据
  7.8.2使用存储过程更新或删除sqlserver数据库中的数据
  7.8.3在oracle数据库中使用存储过程更新或删除数据
 7.9使用linqtosql更新或删除数据库中的数据
  7.9.1创建datacontext对象
  7.9.2编写select按钮的单击事件处理程序
  7.9.3编写update按钮的单击事件处理程序
  7.9.4编写delete按钮的单击事件处理程序
 7.10本章小结
第8章在asp.net中访问数据
 8.1.netframework简介
 8.2asp.net和asp.net3.5简介
  8.2.1asp.netweb应用程序的文件结构
  8.2.2asp.net的执行模型
  8.2.3当web应用程序执行时实际发生的过程
  8.2.4测试和运行web项目的条件
 8.3开发asp.netweb应用程序,选取并显示sqlserver数据库中的数据
  8.3.1创建用户界面——login窗体
  8.3.2开发用来访问数据库并获取数据的代码
  8.3.3在客户端验证数据
  8.3.4创建第2个用户界面——selection页面
  8.3.5开发打开其他web页面的代码
  8.3.6创建第3个用户界面——faculty页面
  8.3.7开发用来选取教员信息的代码
  8.3.8创建第4个用户界面——course页面
  8.3.9开发用来选取指定课程信息的代码
 8.4开发asp.netweb应用程序,将数据插入到sqlserver数据库中
  8.4.1创建新的web页面insert.aspx
  8.4.2开发用来执行数据插入功能的代码
  8.4.3编写page_load()方法和back按钮的单击事件处理程序
  8.4.4编写insert按钮的单击事件处理程序
  8.4.5编写其他方法的代码
  8.4.6验证数据插入操作
 8.5开发web应用程序,更新或删除数据sqlserver数据库中的数据
  8.5.1应用程序的用户界面
  8.5.2修改faculty页面的代码
  8.5.3编写update按钮的单击事件处理程序
  8.5.4编写delete按钮的单击事件处理程序
 8.6使用linqtosql查询开发asp.netweb应用程序
  8.6.1创建一个新的web窗体
  8.6.2创建一个新的datacontext对象
  8.6.3编写数据选取查询的代码
  8.6.4编写数据插入查询的代码
  8.6.5编写数据更新或删除查询的代码
 8.7开发asp.netweb应用程序,从oracle数据库中选取数据
  8.7.1修改login页面中的连接字符串和connection对象
  8.7.2修改login页面中的查询字符串
  8.7.3修改faculty页面中的查询字符串
  8.7.4修改course页面中的查询字符串
 8.8开发asp.netweb应用程序,向oracle数据库中插入数据
  8.8.1在faculty页面中添加两个控件
  8.8.2修改faculty页面中一些方法的代码
  8.8.3在faculty页面中创建插入新教员信息的代码
 8.9开发asp.netweb应用程序,更新或删除oracle数据库中的数据
  8.9.1修改项目,执行数据更新操作
  8.9.2开发存储过程,执行数据删除操作
 8.10本章小结
第9章asp.netweb服务
 9.1web服务及其组件
 9.2创建web服务的过程
  9.2.1web服务项目的典型结构
  9.2.2创建web服务项目时需要实际考虑的问题
  9.2.3创建asp.netweb服务的过程
 9.3创建asp.netweb服务项目,访问sqlserver数据库
  9.3.1新web服务项目中创建的文件和项目
  9.3.2helloworldweb服务项目的运行效果
  9.3.3修改默认的web服务项目
  9.3.4为web服务创建一个处理错误检查的基类
  9.3.5创建实际的web服务类
  9.3.6在web服务类中添加web方法
  9.3.7为web方法编写代码以执行web服务
  9.3.8开发存储过程以执行数据查询
  9.3.9在web方法中使用dataset作为返回对象
  9.3.10创建基于windows的web服务客户端以使用web服务
  9.3.11创建一个基于web的web服务客户端以使用web服务
  9.3.12将开发完成的web服务部署到产品级服务器上
 9.4创建asp.netweb服务项目,将数据插入到sqlserver数据库中
  9.4.1修改已有的web服务项目
  9.4.2web服务项目的开发过程
  9.4.3开发和修改后台代码文件
  9.4.4创建基于windows的web服务客户端以使用web服务
  9.4.5创建基于web的web服务客户端以使用web服务
 9.5创建asp.netweb服务项目,更新或删除sqlserver数据库中的数据
  9.5.1修改已有的web服务项目
  9.5.2修改相关的web方法
  9.5.3开发两个存储过程:webupdatecoursesp和webdeletecoursesp
 9.6创建基于windows的web服务客户端以使用web服务
 9.7创建基于web的web服务客户端以使用web服务
  9.7.1创建新的网站项目并添加已有的web页面
  9.7.2添加web服务引用并修改web窗体
  9.7.3修改相关方法的代码
 9.8创建asp.netweb服务项目以访问oracle数据库
  9.8.1创建web服务项目webserviceoracleselect
  9.8.2修改连接字符串
  9.8.3修改名称空间列表
  9.8.4修改web方法getsqlselect及相关方法
  9.8.5修改web方法getsqlselectsp及相关方法
  9.8.6修改web方法getsqlselectdataset
 9.9创建web服务客户端以使用web服务webservice-oracleselect
 9.10创建asp.netweb服务项目,将数据插入到oracle数据库中
  9.10.1创建web服务项目webserviceoracleinsert
  9.10.2修改连接字符串
  9.10.3修改名称空间列表
  9.10.4修改web方法setsqlinsertsp及相关方法
  9.10.5修改web方法getsqlinsert及相关方法
  9.10.6修改web方法sqlinsertdataset
  9.10.7修改web方法getsqlinsertcourse及相关方法
 9.11创建web服务客户端以使用web服务webserviceoracleinsert
 9.12创建asp.netweb服务项目,更新或删除oracle数据库中的数据
  9.12.1创建web服务项目webserviceoracle-updatedelete
  9.12.2修改连接字符串
  9.12.3修改名称空间列表
  9.12.4修改web方法sqlupdatesp及相关方法
  9.12.5修改web方法getsqlcourse及相关方法
  9.12.6修改web方法getsqlcoursedetail及相关方法
  9.12.7修改web方法sqldeletesp
 9.13创建web服务客户端项目以使用web服务
 9.14本章小结

章节摘录

版权页:插图:本章主要讨论了如何使用不同的方式,在VisualC#.NET2008环境中开发数据驱动型应用程序。本章讨论的重点是数据查询。第一种方式是使用VisualStudi02008提供的设计工具和向导以及ADO.NET来创建简单且功能强大的数据查询。第二种方式是使用运行时对象来创建可移植的数据查询项目。第三种方式是使用LINQtoDataSet和LINQtoSQL来简化数据查询并提高查询性能。相比较而言,第一种方式是最简单,对于初学VisualC#数据库开发的读者来说也是最容易理解和学习的。采用这种方式进行开发时,可以使用ADO.NET和VisualStudi02008提供的一些强大的设计工具和向导来简化代码的编写过程,其中绝大多数代码都是用户在使用这些工具和向导时由.NETFramework3.5 和VisualC#.NET2008自动生成的,例如在VisualC#.NET2008中添加数据源、创建数据绑定和连接到指定的数据源等操作。这种开发方式的缺点,就是大部分编码都是由系统在幕后实现的。因此开发人员很难理解在这些工具和向导的背后,实际执行了哪些具体的操作。并且绝大部分代码都是系统在特定的计算机上自动生成的,因此不太容易在其他平台上转换并执行这些代码。第二种方式是采用运行时对象来执行数据查询,它允许用户在项目运行后,动态地创建所有相关的数据对象并执行相应的数据操作。由于所有的对象都是使用代码生成的,因此很容易在其他平台上转换并执行这种类型的项目。这种开发方式为开发人员提供了一个清晰的视图,允许开发人员根据设计和构想,从全局和细节角度来控制项目的方向。这种方法的缺点,就是大量的编码工作使项目变得更加复杂,对于初学者来说难以接受。第三种方式,即LINQtoDataSet和LINQtoSQL,是随VisualStudi02008一起发布的最新的数据查询技术。采用这种方式可以显著地简化代码的编写,并极大地提高查询的效率。在本章开发的一些项目中,将传统数据查询方式与LINQ技术进行了比较,从中可以看到LINQ技术的优势所在。


编辑推荐

《C#数据库编程实战经典》既包含数据库编程的基础知识,又分析和探讨数据库编程的高级技术,既适用于学生和初学者,也适用于富有经验的程序员。通过完整的示例项目,详细介绍了如何针对三种主流的关系型数据库-Microsoft Access' 2007、SQL Server 2005 SP2和Oracle Database 10g×E R2进行各种数据操作,并分析三者代码之间的差别。既有对通过设计工具和向导实现数据库编程任务的介绍,又包含通过运行时对象完成相同任务的技术和技巧,从而使读者真正理解并掌握数据库编程的实用技术。详细讨论并分析了新的数据库查询技术-LINQ API,包括LINQ to Objects、LINQ to SQL、LINQ to Entities和LINQ to XML。

图书封面

广告

下载页面


C#数据库编程实战经典 PDF格式下载



学C#数据库编程,这一本足矣


各种数据库,各种操作,各种控件


什么都不错。
其实,作为程序设计用书,理解思路最重要,问题是靠方法解决的,经验只是一种参考


内容很丰富啊,还没看完。不过送来书有点旧,凑合吧,不影响看。


很好的书,讲得深入浅出


khjljlkj


书质不错,内容也比较全,就是涉猎的不深


不错,推荐大家


书的质量不错,包装也好,十分喜欢,下次还在当当买


基本涵盖了数据库编程的内容,不过送过来时书有点折了


这一本书总体还是不错但是有点久了


讲解烦琐


书的内容很喜欢 , 但书表面有折皱并且也有点脏


学习数据库相关的,有这一本足以!


这本书讲的内容不错,及设计到桌面数据库程序应用,又设计web应用,看了四分之三,总体感觉讲的不错。


相关图书