1、 用The SQL Server .NET Data Provider連接數(shù)據(jù)庫
創(chuàng)新互聯(lián)公司長(zhǎng)期為上1000+客戶提供的網(wǎng)站建設(shè)服務(wù),團(tuán)隊(duì)從業(yè)經(jīng)驗(yàn)10年,關(guān)注不同地域、不同群體,并針對(duì)不同對(duì)象提供差異化的產(chǎn)品和服務(wù);打造開放共贏平臺(tái),與合作伙伴共同營造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為善左企業(yè)提供專業(yè)的網(wǎng)站設(shè)計(jì)制作、成都網(wǎng)站設(shè)計(jì),善左網(wǎng)站改版等技術(shù)服務(wù)。擁有10多年豐富建站經(jīng)驗(yàn)和眾多成功案例,為您定制開發(fā)。
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是通過位于名稱空間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)
2)連接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)連接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文件下的。
由于篇幅有限,這里就只介紹連接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)
2)連接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)要從工作效率方面來考慮。
以上回答你滿意么?
以下是完整模塊
Imports
System.Data
Imports
System.IO
Imports
System.Data.OleDb
Module
Module1
Public
cn
As
New
OleDb.OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data
Source="
Application.StartupPath
"\mdb數(shù)據(jù)庫名字.mdb")
'定義連接
Public
DataBaseRST
As
Integer
'用來返回?cái)?shù)據(jù)庫執(zhí)行結(jié)果
Public
Function
DataModify(ByVal
str
As
String)
As
Boolean
'進(jìn)行數(shù)據(jù)庫修改操作
Dim
cmdinsert
As
New
OleDbCommand
Try
cmdinsert.CommandText
=
str
cmdinsert.Connection
=
cn
If
cn.State
=
ConnectionState.Closed
Then
cn.Open()
DataBaseRST
=
cmdinsert.ExecuteNonQuery()
'用來返回執(zhí)行的結(jié)果
cn.Close()
Return
True
Catch
ex
As
Exception
MessageBox.Show(Err.Description,
"Error",
MessageBoxButtons.OK,
MessageBoxIcon.Error)
Return
False
End
Try
End
Function
Public
Function
Search(ByVal
str
As
String,
ByVal
DGV
As
DataGridView)
As
Boolean
'查詢
str---查詢命令,DGV---DataGridView,用來顯示數(shù)據(jù)的控件
Dim
tb
As
New
DataTable
Try
Dim
ap
As
New
OleDb.OleDbDataAdapter(str,
cn)
ap.Fill(tb)
DGV.DataSource
=
tb
Return
True
Catch
ex
As
Exception
MessageBox.Show(Err.Description,
"Error",
MessageBoxButtons.OK,
MessageBoxIcon.Error)
Return
False
End
Try
End
Function
End
Module
'以下是調(diào)用方法
DataModify("
insert
into
aa
values
('1','2')")'-------這里是數(shù)據(jù)庫更新操作
Search("select
bb
from
aa",DataGridView1)'-----------這里是數(shù)據(jù)表查詢操作
在此本人使用ADO對(duì)象訪問ACCESS數(shù)據(jù)庫,但ADO對(duì)象在使用前你先要進(jìn)行添加,啟動(dòng)VB6后,單擊菜單“工程-引用”,打開引用對(duì)話框,選擇“Microsoft ActiveX Data Objects 2.0 Library”,將其勾選,(以2.0版本為例,實(shí)際可以選擇系統(tǒng)中的最高版本如本人的就是2.6版本),然后在當(dāng)前目錄下建立一個(gè)名為“學(xué)生”的ACCESS數(shù)據(jù)庫,其中表名為“表”,字段共有:學(xué)號(hào),姓名,年齡,性別四個(gè)字段,接下來就是設(shè)計(jì)界面了(自己設(shè)計(jì))
現(xiàn)在介紹如何使用代碼訪問ACCESS數(shù)據(jù)庫:
在代碼窗口中編寫一個(gè)返回字符型的函數(shù)
Function Connection() As String
'數(shù)據(jù)庫的連接設(shè)置配置
Connection = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" App.Path + "\學(xué)生.mdb"
End Function
該函數(shù)用于連接數(shù)據(jù)庫用
Private Form_Load()
Dim cnn As New ADODB.Connection
Dim Rst As New ADODB.Recordset
cnn.Open Connection
Set Rst = New ADODB.Recordset
Rst.Open "select * from 表", cnn, adOpenKeyset, adLockOptimistic
End Sub
注:
Dim cnn As New ADODB.Connection創(chuàng)建一個(gè)ADO數(shù)據(jù)庫連接對(duì)象
Dim Rst As New ADODB.Recordset為創(chuàng)建一個(gè)ADO數(shù)據(jù)庫記錄對(duì)象
select * from 表 是SQL查詢語言,這里為數(shù)據(jù)源,意思就是打開數(shù)據(jù)庫“學(xué)生”中的表“表”
下面是將數(shù)據(jù)庫表中的字段值顯示出來的一個(gè)過程
Sub View()
Dim i As Integer
For i = 0 To 2
Text1(i) = Rst.Fields(i)'text1為控件數(shù)組
Next
If (Rst.Fields(3) = True) Then
Text1(3) = "男"
Else
Text1(3) = "女"
End If
End Sub
要訪問ACCESS數(shù)據(jù)庫就這樣可以實(shí)現(xiàn),訪問SQL也差不多,稍有不同,回答完畢,如還有問題請(qǐng)繼續(xù)和我聯(lián)系,本人是專使用VB+SQL/Delphi+SQL開發(fā)數(shù)據(jù)庫管理系統(tǒng)的程序員。
1,使用ADO connection對(duì)象
首先,要建立ADO引用,定義connection這個(gè)類,然后實(shí)例化對(duì)象。
代碼完成如下:
span?style="font-size:18px;"Dim?objCn?As?New?Connection,?objRs?As?New?Recordset????????
objCn.ConnectionString?=?"Provider=Microsoft.Jet.OLEDB.3.51;"??"Data?Source="??App.Path??"\實(shí)例01.mdb"
objCn.Open??
/span
2,使用ODBC數(shù)據(jù)源
首先,打開電腦上的ODBC數(shù)據(jù)源,建立關(guān)系。
步驟如下:
1),打開電腦上的ODBC數(shù)據(jù)源
如下圖所示:
? ? ? ? ?
2)點(diǎn)擊添加
3)命名
4)和數(shù)據(jù)庫源建立關(guān)系
5)用代碼實(shí)現(xiàn)連接
span?style="font-size:18px;"???????
dim?objCn?As?Connection??
Set?objCn?=?New?Connection??
objCn.Open?"DSN=實(shí)例2DSN"??
/span
3、ADO Data 控件創(chuàng)建連接
1)右擊data控件,選擇ADODC屬性
2)從三種連接資源中選擇一種。
使用data Link 文件:直接點(diǎn)擊瀏覽,找到包含連接字符串的.udl文件即可
使用ODBC數(shù)據(jù)源連接,單擊新建
選擇用戶數(shù)據(jù)庫,之后的操作跟2中步驟一樣。
使用連接字符串:?jiǎn)螕羯?/p>
測(cè)試連接
4、使用數(shù)據(jù)環(huán)境設(shè)計(jì)器創(chuàng)建數(shù)據(jù)庫連接
添加引用
右擊創(chuàng)建連接,在右擊想要連接的屬性,之后的操作跟data控件中使用字符串中的操作一致