概述:
本文在微软站点资源的基础上加工整理而成,意在介绍在你的ADO.NET应用程序中执行和完成性能优化、稳定性和功能性方面提供最佳的解决方案;同时也包含在ADO.NET中运用已有的数据对象进行开发的最佳实践和帮助你怎样设计ADO.NET应用程序提供建议。
本文包含以下内容:
1..NET框架中的data providers;
2.对照DataSet和DataReader,分别介绍他们的最佳用途;
3.如何使用DataSet、Commands和Connections;
4.结合XML;
5.如果你是ADO程序员,也不妨看看ADO.NET与ADO的区别和联系;
6.结合一些FAQ,更深一步讨论ADO.NET观点和使用技巧。
介绍:
A..NET框架中的data providers
Data providers在应用程序和数据库之间扮演一个桥梁的角色,它使得你可以从一个数据库返回查询结果、执行命令以及对数据集的更新等。
B.几种data provider的介绍
下面表格中数据表明各种data provider以及最佳适用数据库对象
提供者
描述
SQL Server.NET Data Provider
在.NET框架中使用System.Data.SqlClient命名空间;
建议在中间层应用程序中使用SQL Server7.0或以后版本;
建议在独立的应用程序中使用MSDE或SQL Server7.0或更高版本;
SQL Server6.5或更早版本,必须使用OLE DB.NET Data Provider中的OLE DB Provider For SQL Server。
OLE DB.NET Data Provider
在.NET框架中使用System.Data.OleDb命名空间;
建议在中间层应用程序中使用SQL Server6.5或以前版本,或者任何在.NET框架SDK中指出的支持OLE DB接口清单的OLE DB Provider,OLE DB接口清单将在后面列出;
建议在独立的应用程序中使用Access,中间层应用程序不建议使用Access;
不再支持为ODBC的OLE DB Provider,要访问ODBC,使用ODBC.NET Data Provider。
ODBC.NET Data Provider
在.NET框架中使用System.Data.Odbc命名空间;
提供对使用ODBC驱动连接的数据库的访问;
.NET Data Provider For Oracle
在.NET框架中使用System.Data.OracleClient命名空间;
提供对Oracle数据库的访问。
Custom.NET Data Provider
提供一套接口,让你可以自定义一个Data Provider;
SQLXML Managed Classes
包含SQLXML Managed Classes的最新版SQLXML3.0,使得你可以访问SQL Server2000或以后版本的XML功能性扩展,比如执行XML模板文件、执行XPath查询和使用Updategrams或Diffgrams更新数据等;在SQLXML 3.0中存储过程和XML模板将会通过SOAP作为一种WEB服务。
表格中提到的OLE DB接口清单,在这里把它列出
OLE DB 对象
接口
OLE DB Services
IdataInitilize
DataSource
IDBInitialize IDBCreateSession IDBProperties IPersist IDBInfo*
Session
ISessionProperties IOpenRowset IDBSchemaRowset* ITransactionLocal* IDBCreateCommand*
Command
IcommandText ICommandProperties ICommandWithParameters* IAccessor (only required if ICommandWithParameters is supported) ICommandPrepare*
MultipleResults
ImultipleResults
RowSet
Irowset IAccessor IColumnsInfo IColumnsRowset* IRowsetInfo (only required if DBTYPE_HCHAPTER is supported)
Row
IRow*
Error
IerrorInfo IErrorRecords ISQLErrorInfo*
C.连接SQL Server7.0或更高版本
使用SQL Server.NET Data Provider连接SQL Server7.0或更高版本是最好的方式,在于它建立与SQL Server的直接连接而中间不需要任何的技术层衔接。如下图一展示了各种访问SQL Server7.0或更高版本的技术比较:
图一(连接访问SQL Server7.0或更高版本的各种技术比较)
以下例子演示怎样创建和打开一个到SQL Server7.0或更高版本数据库的连接:
‘Visual Basic
Dim nwindConn As SqlConnection = New SqlConnection("Data Source=localhost;Integrated Security=SSPI;" & _ "Initial Catalog=northwind")
nwindConn.Open()
‘C#
SqlConnection nwindConn = new SqlConnection("Data Source=localhost; Integrated Security=SSPI;" +
"Initial Catalog=northwind");
nwindConn.Open();
D.连接ODBC数据源
ODBC.NET Data Provider,使用System.Data.Odbc命名空间,拥有为SQL Server和OLE DB的.NET Data Porvider一样的结构,使用ODBC前缀(比如OdbcConnetion)和标准的ODBC连接字符。下面例子演示怎样创建和打开一个到ODBC数据源的连接:
‘Visual Basic
Dim nwindConn As OdbcConnection = New OdbcConnection("Driver={SQL Server};Server=localhost;" & _ "Trusted_Connection=yes;Database=northwind")
nwindConn.Open()
‘C#
OdbcConnection nwindConn = new OdbcConnection("Driver={SQL Server};Server=localhost;" +
"Trusted_Connection=yes;Database=northwind");
nwindConn.Open();
E.使用DataReaders、DataSets、DataAdapters和DataViews
ADO.NET使用DataSet和DataReader对象读取数据并存储。DataSet就好比是数据库的直系亲属,拥有数据库的所有表、顺序和数据库的约束(比如表间关系)。DataReader则从数据库读取快速的、只进的的和只读的数据 [1] [2] [3] [4] [5] 下一页 [C语言系列]NET 中C#的switch语句的语法 [系统软件]托拽Explore中的文件到VB.net的窗口 [系统软件]Boost库在XP+Visual C++.net中的安装 [常用软件]新配色面板:Paint.Net3.0RC1官方下载 [常用软件]用内建的“Net Meeting”聊天 [VB.NET程序]Henry的VB.NET之旅(三)—共享成员 [VB.NET程序]Henry的VB.NET之旅(二)—构造与析构 [VB.NET程序]Henry的VB.NET之旅(一)—失踪的窗体 [VB.NET程序]在托盘上显示Balloon Tooltip(VB.NET) [VB.NET程序]Henry手记-VB.NET中动态加载Treeview节点(二)
|