中国体育彩票官方网站|双色球近200期走试图

ADO.NET 對象介紹(一)

作者:vkvi 來源:千一網絡(原創) 日期:2007-6-26

ADO.NET 對象眾多,我們將其分成兩大類,第一類是直接與數據庫相關的對象,以 Sql 或 OleDb 開頭,第二類是與 DataSet 相關的,諸如數據表、數據視圖等。

本文屬 .NET Framework 1.0 范疇,2.0 中兼容。


這一節介紹的對象有:Connection、Command、DataReader、DataAdapter,但在編程中并不使用這幾個單詞作為對象名稱,還需要在前面加上 Sql 或 OleDb,加上 Sql 的對象實用于 MS SQL Server 7.0 及以上版本,加上 OleDb 的對象適用于所有數據庫(管理系統),使用 Sql 開頭的對象操作 MS SQL Server 數據庫要比使用 OleDb 開頭的對象操作 MS SQL Server 數據庫性能優越,所以在數據庫使用 MS SQL Server 時,應該使用 Sql 開頭的對象,否則微軟也不會單獨開發出一系列針對 MS SQL Server 的對象了。

使用 Sql 開頭的對象,名稱空間是:

System.Data.SqlClient

使用 OleDb 開頭的對象,名稱空間是:

System.Data.OleDb

SqlConnection 和 OleDbConnection

Connection 對象用于建立和數據庫的連接。對于 SqlConnection 不需要指明 provider,因為其驅動是固定的,而對于 OleDbConnection 則需要指明 provider 用以說明需要什么數據庫驅動。

SqlConnection conn = new SqlConnection("server=(local);User ID=foo;Password=foo;Initial Catalog=foo");

SqlCommand 和 OleDbCommand

Command 對象用于對數據庫進行操作。

SqlCommand cmd = new SqlCommand("select * from tbl", conn); //conn 為 SqlConnection 對象

SqlDataReader 和 OleDbDataReader

DataReader 對象讀取數據庫中的數據,它從數據庫返回一個只讀的、僅向前的數據流,當前內存中每次僅存在一條記錄,所以它相對 ADO 的 RecordSet 性能非常優越。SqlDataReader 和 OleDbDataReader 的屬性和方法還是有一定區別的,因為面向的數據庫字段類型不同。

SqlDataReader dr = cmd.ExecuteReader(); //cmd 為 SqlCommand 對象

SqlDataAdapter 和 OleDbDataAdapter

DataAdapter 對象建立、初始化 DataTable,從而和 DataSet 對象結合起來在內存中存放數據,DataAdapter 對象能隱藏和 Connection、Command 對象溝通的細節,所以在使用 DataAdapter 時不需要指明 conn.Open(conn 為 Connection 對象),而使用 Command 和 DataReader 則需要指明 conn.Open。

DataAdapter 與下一節的 DataSet 密切相關。

相關文章
文章評論
中国体育彩票官方网站 甘肃快3开奖和值走势图 贵卅体彩十一选五开奖结果一定牛 天津股票配资 21点游戏网址 安徽快三走势图基本图一定牛 吉林11选5规则 福建时时彩十选一 万豪彩票首页 广东好彩1怎么玩 江苏快3开奖结果