vb.net行連接的簡單介紹

vb.net和數(shù)據(jù)庫連接的問題

我們需要引用ADO.具體的方法是,在"工程" -- "引用" 中,找到"Microsoft ActiveX Data Object *.* Library",這里的"*.*"是指的時ADO的版本號,一般來說,應(yīng)用程序或ActiveX控件都具有向下兼容性,所以我們盡可能選擇比較新的版本.以確保程序在能識別舊版本Access的同時,也能識別較新版本的Access.

成都創(chuàng)新互聯(lián)專注于企業(yè)營銷型網(wǎng)站建設(shè)、網(wǎng)站重做改版、松桃網(wǎng)站定制設(shè)計、自適應(yīng)品牌網(wǎng)站建設(shè)、成都h5網(wǎng)站建設(shè)購物商城網(wǎng)站建設(shè)、集團公司官網(wǎng)建設(shè)、成都外貿(mào)網(wǎng)站建設(shè)公司、高端網(wǎng)站制作、響應(yīng)式網(wǎng)頁設(shè)計等建站業(yè)務(wù),價格優(yōu)惠性價比高,為松桃等各大城市提供網(wǎng)站開發(fā)制作服務(wù)。

然后我們需要在程序中創(chuàng)建一個對象.就好比我們在窗體上添加一個FileBox才能看到文件名一樣,只有創(chuàng)建了ADO對象,我們才能夠訪問數(shù)據(jù)庫.常用的對象有兩個,Connection和Recordset.

創(chuàng)建這兩個對象的具體方法是:

1.在引用后,使用New關(guān)鍵字,如

Private Conn As New ADODB.Connection

Private Reco As New ADODB.Recordset

2.在沒引用時,用CreateObject創(chuàng)建對象:

Dim Conn,Reco

Set Conn = CreateObject("ADODB.Connection")

Set Reco = CreateObject("ADODB.Recordset")

創(chuàng)建了對象之后,下一步我們要做的就是打開數(shù)據(jù)庫了.

先看下面的代碼,可以成功的打開數(shù)據(jù)庫.

Conn.open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\Main.mdb"

這句代碼打開了D盤中的Main.mdb這個數(shù)據(jù)庫.

Connection.Open方法的第一個參數(shù)是連接代碼,它將傳遞給系統(tǒng)的數(shù)據(jù)庫引擎.前半部分"Provider= Microsoft.Jet.OLEDB.4.0",它表示了數(shù)據(jù)庫的類型.不同的數(shù)據(jù)庫可能會不同.后半句"Source=d:\main.mdb"它表示了數(shù)據(jù)庫所在的絕對路徑.

打開數(shù)據(jù)庫之后,還要打開表.假如數(shù)據(jù)庫中有一個表,表名為"Users",字段有兩個,一個為用戶名,一個為密碼.那么看以下代碼.

1.想返回"Users"中,[用戶名]為"去年煙花"的[密碼]

Recordset.open "Select 密碼 From Users Where 用戶名='去年煙花'",Connection,1,1

之后我們就可以把用戶輸入的密碼進行比較,看是否允許登錄.

If Recordset.eof and Recordset.bof then

Msgbox "用戶不存在!",16

Else

If PassWord =Recordset("密碼").value then

msgbox "登錄成功!",64

Else

msgbox "密碼錯誤!",32

End If

End If

Recordset.Close

2.假設(shè)Admin已經(jīng)成功登錄系統(tǒng),我們想把所有的用戶名和密碼都顯示出來

Recordset.open "Select * From Users",Connection,1,1

這時,表已經(jīng)被打開,我們就用以下代碼把它顯示出來.

Do whlie Not Recordset.eof

Print "用戶名: " Recordset("用戶名").value "密碼: " Recordset("密碼").value

Recordset.MoveNext

Loop

Recordset.Close

由以上代碼示例可以看出,打開表時,可以只打開其中的一個字段,也可以打開所有.第一個參數(shù)是SQL語句.

Select [字段名] From 表名 [Where 條件]

這里的條件可以省略.且字段名也可以用"*"來代替所有字段.

需要注意的是,如果你用(1)中的方法打開,那么(2)后面顯示的代碼就不能再用在(1)中.因為(1)里并沒有打開[用戶名]字段,所以這一句Recordset("密碼")就沒有值存在,還有可能出錯.

后面的條件,可以用"="、""、""等運算符.比如 "Where ID 32".(這里假設(shè)[ID]為數(shù)字型.)

這是打開的部分.第二個很重要的部分就是查詢記錄.

數(shù)據(jù)庫它并不是把所有記錄全部放到一個變量中備用的.而是以"當前記錄"的形式來返回一個值.所以我們想從中找到有用的信息,就必須要對信息進行定位/篩選.

定位:

移動到下一條 Recordset.MoveNext

移動到上一條 Recordset.MovePrevious

移動到最后一條 Recordset.MoveLast

移動到第一條 Recordset.MoveFrist

移動到某一條 Recordset.Move Number

篩選:

Recordset.Find "條件"

如:[用方法(2)打開表之后]

Private Sub Command1_Click()

Recordset.Find "用戶名=" "text1.text"

If Recordset.Eof True Then

Msgbox "該用戶的密碼是:" Recordset("密碼").value,64

Else

Msgbox "未找到該用戶的資料!",16

End If

End Sub

MoveNext 只有當Eof不為True時,才可用,否則發(fā)生錯誤.而MovePrevious剛是Bof不為True時....

而只要Eof 和 Bof中有一個不為真時,也就是說只要有一條記錄時,它就可以使用.

Find 方法中的條件和Open時的第一個參數(shù)中的條件表述方法是完全一致的.當在已打開的記錄集中,找不到該記錄時,Eof為True.找到則當前的值就是符合條件的記錄.

第三個部分就是添加/修改記錄.

修改記錄很簡單,先按以上的方法找到相關(guān)記錄之后,給記錄賦值就可以了.

比如:[(修改密碼)按方法(1)打開表之后]

Recordset("密碼").value = "123456"

Recordset.Updata

需要注意的就是,在修改完成后,要調(diào)用Updata方法,這樣修改才能生效.

而添加記錄則可以用以下代碼來實現(xiàn):

Recordset.addnew

Recordset("用戶名").value = "Admin"

Recordset("密碼").value = "Admin"

Recordset.Updata

這里,先要調(diào)用Addnew方法,增加一條新記錄,然后對這個新記錄中的各字段賦值,最后再調(diào)用Updata方法.

到這里就差不多了,最后說一下上面提到的幾個方法.

Recordset.Open SQL語句,數(shù)據(jù)源,游標類型,打開方法

SQL語句不用說了,就是Select那啥的,目的就是按要求從表中返回數(shù)據(jù)

數(shù)據(jù)源就是一個打開之后的Connection對象.

去他媽的游標類型,填1就可以了 [偷笑ing]

打開方法對應(yīng)了幾個常數(shù),具體哪幾個可以從對象瀏覽器里看.

對應(yīng)數(shù)值的意義:

1 只讀 2 獨占 3 可寫 4 自已可寫,別人可讀

Connection.open 連接代碼,服務(wù)器用戶名,密碼

這里的連接代碼就不在多說了,服務(wù)器用戶名,密碼只有在連接遠程數(shù)據(jù)庫時才用到.

vb.net的數(shù)據(jù)庫怎么連接啊?

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)閉連接,釋放資源

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)

vb.net的數(shù)據(jù)庫連接

1·綁定數(shù)據(jù)源來進行連接

2.用代碼連接

先到數(shù)據(jù)庫建立一個數(shù)據(jù)庫和相應(yīng)的表

連接數(shù)據(jù)庫的代碼:

Dim str As String = "Data Source=服務(wù)器名;Initial Catalog=數(shù)據(jù)庫名;Persist Security Info=True;User ID=;Password="

dim conn As SqlClient.SqlConnection

try

conn = New SqlClient.SqlConnection

conn.ConnectionString = str

conn.Open()

Return True

Catch ex As Exception

MsgBox(ex.ToString)

Return False

End Try

登錄代碼:Dim str As String = "Data Source=服務(wù)器名;Initial Catalog=數(shù)據(jù)庫名;Persist Security Info=True;User ID=;Password="

dim conn As SqlClient.SqlConnection

conn = New SqlClient.SqlConnection

conn.ConnectionString = str

conn.Open()

sqlstr = "Select * From Amd Where AmdName='" TextBox1.Text "' And AmdPwd = '" TextBox2.Text "'"

Dim sqlcmd As SqlClient.SqlCommand = New SqlClient.SqlCommand(sqlstr, conn)

Dim dr As SqlClient.SqlDataReader

dr = sqlcmd.ExecuteReader

If dr.Read = True Then '判斷一條記錄為真

kf.Show() '顯示下個窗體

Me.Hide() ’隱藏當前窗體

Else

MessageBox.Show("輸入信息有誤!", "提示")

TextBox1.Text = ""

TextBox2.Text = ""

End If

新聞標題:vb.net行連接的簡單介紹
文章起源:http://m.kartarina.com/article38/heispp.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站策劃Google域名注冊做網(wǎng)站網(wǎng)站制作外貿(mào)建站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

綿陽服務(wù)器托管
主站蜘蛛池模板: 亚洲av无码专区在线观看素人| heyzo专区无码综合| 亚洲gv猛男gv无码男同短文| 国产精品99精品无码视亚| 无码福利一区二区三区| 国产在线无码视频一区| 久久亚洲精品中文字幕无码| 无码A级毛片日韩精品| 亚洲av日韩av无码| 伊人蕉久中文字幕无码专区| 精品亚洲AV无码一区二区三区| 亚洲色偷拍区另类无码专区| 亚洲乱人伦中文字幕无码| 亚洲中文字幕无码永久在线 | 精品爆乳一区二区三区无码av| 久久亚洲AV成人无码国产最大| 亚洲AV无码精品色午夜在线观看 | 最新亚洲人成无码网站| 无码人妻视频一区二区三区| 四虎成人精品无码永久在线 | 中文无码字幕中文有码字幕| 亚洲日韩v无码中文字幕| 国产嫖妓一区二区三区无码| 日韩毛片免费无码无毒视频观看 | 亚洲午夜无码久久久久小说| 亚洲精品无码鲁网中文电影| 超清无码一区二区三区| 精品无码人妻一区二区三区不卡 | 国产午夜精品无码| 久久亚洲AV永久无码精品| 国产精品无码制服丝袜| 欧洲黑大粗无码免费| 亚洲av无码专区国产不乱码| 亚洲午夜成人精品无码色欲| 亚洲av无码专区在线| 麻豆AV无码精品一区二区| 中文字幕无码日韩欧毛| 亚洲日韩精品无码专区| 好了av第四综合无码久久| 日本精品人妻无码免费大全| 无码人妻一区二区三区av|