作者:PeterXu 来源:Blog.CSDN Blog: http://blog.csdn.net/peterreg/
版权声明:原创作品,允许转载,转载时请务必以超链接形式标明文章原始出版、作者信息和本声明,否则将追究法律责任。本文地址:http://blog.csdn.net/peterreg/archive/2008/04.aspx
接我的上一篇文章《Windows应用程序实例(2)》, 下面我们介绍数据访问机制ADO.NET。
1. ADO.NET 是一组向 .NET 程序员公开数据访问服务的类。ADO.NET 为创建分布式数据共享应用程序提供了一组丰富的组件。它提供了对关系数据、XML 和应用程序数据的访问,因此是 .NET Framework 中不可缺少的一部分。ADO.NET 支持多种开发需求,包括创建由应用程序、工具、语言或 Internet 浏览器使用的前端数据库客户端和中间层业务对象。
2. ADO.NET 对 Microsoft SQL Server 和 XML 等数据源以及通过 OLE DB 和 XML 公开的数据源提供一致的访问。数据共享使用者应用程序可以使用 ADO.NET 来连接到这些数据源,并检索、处理和更新所包含的数据。
3. ADO.NET 通过数据处理将数据访问分解为多个可以单独使用或一前一后使用的不连续组件。ADO.NET 包含用于连接到数据库、执行命令和检索结果的 .NET Framework 数据提供程序。您可以直接处理检索到的结果,或将其放入 ADO.NET DataSet对象,以便与来自多个源的数据或在层之间进行远程处理的数据组合在一起,以特殊方式向用户公开。ADO.NET DataSet 对象也可以独立于 .NET Framework 数据提供程序使用,以管理应用程序本地的数据或源自 XML 的数据。
4. ADO.NET附带了4个数据库客户命名空间,一个用于SQL Server,另一个用于Oracle,第3个用于ODBC数据源,第四个用于通过OLEBC实现的数据库。如果数据库不是SQL Server或Oracle,就应使用OLE DB,除非还能使用ODBC。
下面的一段简单代码就是用ADO.NET来访问SQL数据库
using System.Data;
using System.Data.SqlClient;
class Program
... {
static void Main()
...{
using (SqlConnection connection = new SqlConnection(ConnectionString))
...{
SqlCommand command = connection.CreateCommand();
command.CommandText = "SELECT CategoryID, CategoryName FROM dbo.Categories;";
try
...{
connection.Open();
SqlDataReader reader = command.ExecuteReader();
while (reader.Read())
...{
Console.WriteLine(" {0} {1}", reader[0], reader[1]);
}
reader.Close();
}
catch (Exception ex)
...{
Console.WriteLine(ex.Message);
}
}
}
static private string ConnectionString
...{
get ...{ return "Data Source=(local);Initial Catalog=Northwind;Integrated Security=SSPI"; }
}
}