解析VB.NET如何連接數(shù)據(jù)庫
在這篇文章中我要跟大家講的,是介紹VB.NET連接數(shù)據(jù)庫編程及其相關(guān)知識(shí)。
Microsoft Visual Basic.NET是Microsoft Visual Basic的更新版本,它基于.NET的框架結(jié)構(gòu),能使用戶非常容易地創(chuàng)建Microsoft Windows操作系統(tǒng)和網(wǎng)絡(luò)的應(yīng)用程序。 使用Visual Basic.NET,可以快速地實(shí)現(xiàn)可視化開發(fā)網(wǎng)絡(luò)應(yīng)用程序、網(wǎng)絡(luò)服務(wù)、Windows 應(yīng)用程序和服務(wù)器端組件。另外,Visual Basic.NET為Windows應(yīng)用程序提供了XCOPY部署,開發(fā)人員不再需要為DLL的版本問題擔(dān)憂。
Visual Basic現(xiàn)在已經(jīng)真正成為面向?qū)ο笠约爸С掷^承性的語言。窗體設(shè)計(jì)器支持可視化繼承,并且包含了許多新的特性,比如自動(dòng)改變窗體大小、資源本地化以及可達(dá)性支持。數(shù)據(jù)類工具內(nèi)在支持XML數(shù)據(jù),在設(shè)計(jì)時(shí)數(shù)據(jù)綁定使用斷開的數(shù)據(jù)。另外, Visual Basic.NET直接建立在.NET的框架結(jié)構(gòu)上,因此開發(fā)人員可以充分利用所有平臺(tái)特性,也可以與其他的.NET語言交互。
一、先介紹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 File\Microsoft.net\odbc.net”。安裝后的組件名為Microsoft.Data.Odbc.dll文件。
添加ODBC .NET Data Provider的步驟:
啟動(dòng)Visual Basic.NET開發(fā)環(huán)境,選中菜單欄的[工具]—>[數(shù)據(jù)]—>[自定義工具箱],在彈出的[自定義工具箱]對(duì)話框中選[.Net 框架組件]單擊[瀏覽]按鈕,在“C:\Program File\Microsoft.net\odbc.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ù)提供者連接各種數(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)閉連接,釋放資源
2、用The OLE DB .NET Data Provider連接數(shù)據(jù)庫
上面已經(jīng)說過,利用The OLE DB .NET Data Provider可以訪問Access、Oracle和SQL Server等種數(shù)據(jù)庫,那么,它是怎樣訪問這些數(shù)據(jù)庫的呢?The OLE DB .NET Data Provider是通過位于名稱空間System.Data.OleDb類庫下的OleDbConnection類來連接這三種不同類型的數(shù)據(jù)庫的。
下面舉例說明:
1)VB.NET連接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)
2)VB.NET連接Access數(shù)據(jù)庫
假設(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)
3)VB.NET連接Oracle數(shù)據(jù)庫
- 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)
3、用The ODBC .NET Data Provider連接數(shù)據(jù)庫
The ODBC .NET Data Provider連接數(shù)據(jù)庫是通過OdbcConnection類來實(shí)現(xiàn)的,這個(gè)類位于名稱空間Microsoft.Data.Odbc下,而名稱空間Microsoft.Data.Odbc是封裝在Microsoft.Data.Odbc.dll文件下的。
1)VB.NET連接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)
2)VB.NET連接Oracle數(shù)據(jù)庫
- 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)要從工作效率方面來考慮。
【編輯推薦】