ADO.Net數據提供程序
數據提供程序用於連接到數據庫,執行命令並檢索數據記錄。它是一個性能更好的輕量級組件。 它還允許將數據放入DataSet
中以在應用程序中進一步使用。
.NET Framework提供了可以在應用程序中使用的下列數據提供者。
編號
.NET Framework數據提供者
描述
1
用於SQL Server的.NET Framework
數據提供程序
它爲Microsoft SQL Server提供數據訪問。它需要System.Data.SqlClient
命名空間。
2
用於OLE DB的.NET Framework數據提供程序
它用於連接OLE DB
。它需要System.Data.OleDb
命名空間。
3
用於Oracle的.NET Framework數據提供程序
它用於Oracle數據源。它使用System.Data.OracleClient
命名空間。
4
EntityClient
提供程序
它爲實體數據模型應用程序提供數據訪問。它需要System.Data.EntityClient
命名空間。
5
用於SQL Server Compact 4.0的.NET Framework數據提供程序。
它爲Microsoft SQL Server Compact 4.0提供數據訪問。它需要System.Data.SqlServerCe
命名空間。
.NET Framework數據提供程序對象
以下是數據提供者的核心對象。
編號
對象
描述
1
Connection
它用於建立到特定數據源的連接。
2
Command
它用於執行查詢來執行數據庫操作。
3
DataReader
它用於從數據源讀取數據。DbDataReader
是所有DataReader
對象的基類。
4
DataAdapter
它填充一個DataSet
,並解析數據源的更新。所有DataAdapter
對象的基類都是DbDataAdapter
類。
用於SQL Server的.NET Framework數據提供程序
SQL Server的數據提供者是一個輕量級組件。它提供了更好的性能,因爲它直接訪問SQL Server而沒有任何中間連接層。在早期版本中,它在連接到創建性能問題的SQL Server之前與ODBC層進行交互。
SQL Server類的.NET Framework數據提供程序位於System.Data.SqlClient
命名空間中。我們可以使用下面的語法在C#
應用程序中包含這個名稱空間。
using System.Data.SqlClient;
這個命名空間包含以下重要的類。
編號
類
描述
1
SqlConnection
它用於創建與SQL Server的連接。這個類不能被繼承。
2
SqlCommand
它用於執行數據庫查詢。這個類不能被繼承。
3
SqlDataAdapter
它表示一組用於填充DataSet
的數據命令和數據庫連接。這個類不能被繼承。
4
SqlDataReader
它用於從SQL Server數據庫中讀取行。這個類不能被繼承。
5
SqlException
這個類用來拋出SQL異常,發生錯誤時會引發異常。這個類不能被繼承。
用於Oracle的.NET Framework數據提供程序
它用於通過Oracle客戶端連接Oracle數據庫。數據提供程序支持Oracle客戶端軟件版本8.1.7或更高版本。該數據提供程序支持本地和分佈式事務。
Oracle數據提供程序類位於System.Data.OracleClient
命名空間中。我們必須使用System.Data.OracleClient
和System.data
在應用程序中與Oracle數據庫連接。參考以下示例代碼 -
using System.Data;
using System.Data.OracleClient;
哪個.NET Framework數據提供程序更好?
數據提供程序的選擇取決於應用程序的設計和數據源。選擇最佳的.NET Framework數據提供程序可以提高應用程序的性能,功能和完整性。下表顯示了數據提供程序的優缺點。
編號
數據提供程序
注意事項
1
用於SQL Server的.NET Framework數據提供程序
這對於使用Microsoft SQL Server的中間層應用程序,單層應用程序來說是不錯的選擇。
2
用於OLE DB的.NET Framework數據提供程序
對於使用Microsoft Access數據庫的單層應用程序來說是很好的選擇。
3
用於ODBC的.NET Framework數據提供程序
對於使用ODBC數據源的中間層和單層應用程序來說,這是不錯的選擇。
4
用於Oracle的.NET Framework數據提供程序
對於使用Oracle數據源的中間層和單層應用程序來說,這是有好處的。