VB.NET連接數(shù)據(jù)庫的幾種方法 一、先介紹ADO.NET和ODBC.NET ADO .NET由Microsoft ActiveX Data Objects (ADO)改進(jìn)而來,它提供平臺(tái)互用和可收縮的數(shù)據(jù)訪問功能,是Visual Basic.NET進(jìn)行數(shù)據(jù)庫編程所使用的重要工具。ADO.NET 使用了某些 ADO 的對(duì)象,如 Connection 和 Command 對(duì)象,并且還引入了新的對(duì)象。主要的新 ADO.NET 對(duì)象包括 DataSet、DataReader 和 DataAdapter。 ODBC.NET是.NET框架中另外一個(gè)很有用的用于數(shù)據(jù)庫開發(fā)的類庫。但是,在.NET FrameWork SDK1.0版中不包含 ODBC.NET,要使用ODBC.NET請(qǐng)到微軟網(wǎng)站下載,具體下載地址:http: //msdn.microsoft.com/library/default.asp?url=/downloads/list/netdevframework.asp (文件名是odbc_net.msi)在默認(rèn)情況下,安裝路徑是“C:Program FileMicrosoft.netodbc.net”。安裝后的組件名為Microsoft.Data.Odbc.dll文件。 添加ODBC .NET Data Provider的步驟: 啟動(dòng)Visual Basic.NET開發(fā)環(huán)境,選中菜單欄的[工具]—>[數(shù)據(jù)]—>[自定義工具箱],在彈出的[自定義工具箱] 對(duì)話框中選[.Net 框架組件]單擊[瀏覽]按鈕,在“C:Program FileMicrosoft.netodbc.net”目錄下選擇 Microsoft.Data.Odbc.dll文件。接下來就在[自定義工具箱]中選擇“OdbcCommand”、 “OdbcCommandBuilder”、“OdbcConnection”、“OdbcDataApdater”后,單擊[確定]。至此,完成了在 Visual Basic.NET中加入ODBC .NET。 二、接下來介紹數(shù)據(jù)提供者(Data Provider) ADO.NET和ODBC.NET兩者共提供了三種數(shù)據(jù)提供者,其中ADO.NET提供兩種(The SQL Server .NET Data Provider和 The OLE DB .NET Data Provider ) ODBC .NET提供一種(The ODBC .NET Data Provider)。表1是三種數(shù)據(jù)提供者及其支持的數(shù)據(jù)庫:
數(shù)據(jù)提供者(Data Provider) I II III
三、接下來就分別介紹以上幾種數(shù)據(jù)提供者連接各種數(shù)據(jù)庫 1、 用The SQL Server .NET Data Provider連接數(shù)據(jù)庫 The SQL Server .NET Data Provider是利用SqlConnection類來連接SQL Server7.0或更高版本的數(shù)據(jù)庫, SqlConnection類位于名稱空間System.Data.SqlClient下。 連接代碼: Dim sqlConnection1 As SqlClient.SqlConnection Dim strConnect As String=”data source=服務(wù)器名;initial catalog=數(shù)據(jù)庫名;user id=sa;password=;” sqlConnection1=New System.Data.SqlClient.SqlConnection(strConnect) sqlConnection1.open ‘打開數(shù)據(jù)庫 sqlConnection1.close ‘關(guān)閉連接,釋放資源
上面已經(jīng)說過,利用The OLE DB .NET Data Provider可以訪問Access、Oracle和SQL Server等種數(shù)據(jù) 庫,那么,它是怎樣訪問這些數(shù)據(jù)庫的呢?The OLE DB .NET Data Provider是通過位于名稱空間Sy stem.Data.OleDb類庫下的OleDbConnection類來連接這三種不同類型的數(shù)據(jù)庫的。下面舉例說明: 1)連接SQL Server數(shù)據(jù)庫 Dim oleDbConnection1 As OleDb.OleDbConnection Dim strConnect As Sting=”Provider=SQLOLEDB;Persist Security Info=False; Data Source=服務(wù)器名;Initial Catalog=數(shù)據(jù)庫名;User ID=sa;Password=;” oleDbConnection1=New System.Data.OleDb.OleDbConnection(strConnect)
假設(shè)要連接的Access數(shù)據(jù)庫名為“Example.mdb”,存放在d:Data目錄下。 Dim oleDbConnection1 As OleDb.OleDbConnection Dim strConnect As Sting=”Provider=Microsoft.Jet.OLEDB.4.0;Data Source=d:Data Example.mdb” oleDbConnection1= New System.Data.OleDb.OleDbConnection(strConnect)
Dim oleDbConnection1 As OleDb.OleDbConnection Dim strConnect As Sting=”Provider=MSDAORA;Data Source=服務(wù)器名;User ID=用戶ID;Password=密碼;” oleDbConnection1= New System.Data.OleDb.OleDbConnection(strConnect)
The ODBC .NET Data Provider連接數(shù)據(jù)庫是通過OdbcConnection類來實(shí)現(xiàn)的,這個(gè)類位于名稱空間 Microsoft.Data.Odbc下,而名稱空間Microsoft.Data.Odbc是封裝在Microsoft.Data.Odbc.dll文件下的。 由于篇幅有限,這里就只介紹連接Sql Server和Oracle數(shù)據(jù)庫的方法,其他數(shù)據(jù)庫的連接方法基本類 似,我就不再多講了。 1)連接Sql Server數(shù)據(jù)庫 Dim odbcDbConnetion1 As Microsoft.Data.OdbcConnection Dim strConnect As Sting=”Driver={SQL Server};Server=服務(wù)器名;Uid=sa;pwd=;Database= 數(shù)據(jù)庫名;” odbcDbConnetion1=New Microsoft.Data.OdbcConnection(strConnect)
Dim odbcDbConnetion1 As Microsoft.Data.OdbcConnection Dim strConnect As Sting=”Driver={Microsoft ODBC for Oracle};Server=服務(wù)器名;Uid=sa;pwd=;” odbcDbConnetion1=New Microsoft.Data.OdbcConnection(strConnect)
四、總結(jié) 通過本文的介紹,讀者基本掌握了在Visual Basic.NET中用ADO.NET和ODBC.NET連接各種數(shù)據(jù)庫的方法 。以上三種驅(qū)動(dòng)針對(duì)不同的數(shù)據(jù)庫,它們的性能方面也有很大的不同:The SQL Server .NET Data Provider 的效率最高;The OLE DB .NET Data Provider的效率比較底;The ODBC .NET Data Provider的效率最慢。 具體連接哪一種數(shù)據(jù)庫選用哪一種數(shù)據(jù)驅(qū)動(dòng)要從工作效率方面來考慮。
|
|