top
Loading...
VisualBasic.NET中使用ADO訪問數據庫

.NET中以 ADO.NET取代以前的ADO。用慣ADO的程序員怎樣在.NET中怎樣應用ADO呢?本人經過不斷的摸索,發現在.NET中ADO一樣可以用,并且很好用。現在結合Visual Basic.NET強大的類開發功能,本人將ADO開發成組件使用,效果非常理想。我使用的方法如下:

啟動Visual Studio.NET。在新建項目中選擇Visual Basic項目,在模板中選擇類庫,在名稱中輸入類庫名稱如DataAccess.確定后,則進入類庫開發環境中,把Class1換名為ADOAccess。

在項目菜單中加入引用,選擇COM頁,找到 Microsoft ActionX Data Object 20 Library 或更高版本。COM選項是Microsoft為了區分現在的.NET,兼容以前的開發方式而設置的,凡是.NET之前的組件都可在COM頁中可找到。

在類名上面寫上Imports ADODB.Connection; Imports ADODB.Recordset ;Imports ADODB.CursorLocationEnum; Imports System.DBNull 4條引用語句,這里分別是引用ADO,ADO的宏定義,設置空值函數的來源。

在類中定義一局部連接對象變量。 Private mCnnDB As New ADODB.Connection()
然后定義連接Access數據庫的過程. Access 數據庫用adUseClient指定,通過Microsoft.Jet.OLEDB數據訪問方式訪問數據庫,Microsoft.Jet.OLEDB又有多種版本,其中4.0是最高版本,它能訪問ACCESS 2000,所以這里的數據提供者指定為Microsoft.Jet.OLEDB.4.0。指定了本地數據庫和提供者后,就可打開一個數據庫了,用open方法實現。完整的代碼如下:

'作用: 連接Access數據庫
'參數: DBName 數據庫名
Public Sub ConnAccess(ByVal DBName As String)
Dim strDB As String
mCnnDB.CursorLocation = adUseClient
mCnnDB.Provider = "Microsoft.Jet.OLEDB.4.0"
mCnnDB.Open(DBName, "Admin")
End Sub

在ODBC中設置DNS,在下面的ConnectionString中指定用戶名和密碼,最后用open方法打開。由于ODBC分有用戶名和無用戶名兩者,我們必須分別實現,借助類的函數名重載功能,我們編寫兩個同名的過程,完整的代碼如下:

'作用: 連接ODBC數據庫(不需指定用戶和密碼 )
'參數:dsnName為ODBC名
Public Sub ConnODBC(ByVal dsnName As String)
mCnnDB.Provider = "MSDASQL"
mCnnDB.ConnectionString = "Data Source='" & dsnName & "'"
mCnnDB.Open()
End Sub

'作用: 連接ODBC數據庫(需指定用戶和密碼 )
'參數:dsnName ODBC名,UserID 用戶名,UserPwd 用戶密碼
Public Sub ConnODBC(ByVal dsnName As String, ByVal UserID As String, ByVal UserPwd As String) mCnnDB.Provider = "MSDASQL"
mCnnDB.ConnectionString = "Data Source='" & dsnName & "'User ID='" & UserID & "';" & _
"Password='" & UserPwd & "
mCnnDB.Open()
End Sub

作者:http://www.zhujiangroad.com
來源:http://www.zhujiangroad.com
北斗有巢氏 有巢氏北斗