真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

vb.net文件名無效 vbs文件無效字符

VB.NET連接access數(shù)據(jù)庫文件時(shí)提示“無效的授權(quán)說明”

數(shù)據(jù)庫與文本文件返回?cái)?shù)據(jù)的方法不同.如果把文本文件比作一個(gè)Textbox 的話,那么數(shù)據(jù)庫更像是一個(gè)ListBox.使用文本文件時(shí)我們需要從整個(gè)Textbox中取出有用的信息,并進(jìn)行處理,而Listbox則可以根據(jù)需要返回特定的某一項(xiàng).

10年積累的網(wǎng)站制作、網(wǎng)站設(shè)計(jì)經(jīng)驗(yàn),可以快速應(yīng)對客戶對網(wǎng)站的新想法和需求。提供各種問題對應(yīng)的解決方案。讓選擇我們的客戶得到更好、更有力的網(wǎng)絡(luò)服務(wù)。我雖然不認(rèn)識你,你也不認(rèn)識我。但先網(wǎng)站設(shè)計(jì)后付款的網(wǎng)站建設(shè)流程,更有雄縣免費(fèi)網(wǎng)站建設(shè)讓你可以放心的選擇與我們合作。

由于VB本身并不帶有可以訪問數(shù)據(jù)庫的類,所以我們需要引用一個(gè)包含能訪問數(shù)據(jù)庫的類來使用數(shù)據(jù)庫.這里我們采用ADODB,相比DAO和能訪問數(shù)據(jù)庫的API來說,它比DAO更靈活,更強(qiáng)大;而比起API,它更簡單易用,更適合初學(xué)者.而Access數(shù)據(jù)庫比起SQL,也相對簡單了很多,且能夠滿足中小型應(yīng)用程序的需要,所以我們在使用數(shù)據(jù)庫時(shí),選擇了Access.

就像使用文本文件來存儲數(shù)據(jù)一樣,我們需要先設(shè)計(jì)好數(shù)據(jù)結(jié)構(gòu),只不過在設(shè)計(jì)Access數(shù)據(jù)庫的結(jié)構(gòu)時(shí),我們需要用到其它的程序來進(jìn)行詳細(xì)的規(guī)劃.建議采用的程序是office中的Access或VB自帶的VISDATA.

當(dāng)數(shù)據(jù)庫設(shè)計(jì)好了以后,我們可以開始"數(shù)據(jù)庫編程"了.

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

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

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

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

Private Conn As New ADODB.Connection

Private Reco As New ADODB.Recordset

2.在沒引用時(shí),用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這個(gè)數(shù)據(jù)庫.

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

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

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

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

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

If Recordset.eof and Recordset.bof then

Msgbox "用戶不存在!",16

Else

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

msgbox "登錄成功!",64

Else

msgbox "密碼錯(cuò)誤!",32

End If

End If

Recordset.Close

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

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

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

Do whlie Not Recordset.eof

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

Recordset.MoveNext

Loop

Recordset.Close

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

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

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

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

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

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

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

定位:

移動(dòng)到下一條 Recordset.MoveNext

移動(dòng)到上一條 Recordset.MovePrevious

移動(dòng)到最后一條 Recordset.MoveLast

移動(dòng)到第一條 Recordset.MoveFrist

移動(dòng)到某一條 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 只有當(dāng)Eof不為True時(shí),才可用,否則發(fā)生錯(cuò)誤.而MovePrevious剛是Bof不為True時(shí)....

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

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

第三個(gè)部分就是添加/修改記錄.

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

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

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

Recordset.Updata

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

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

Recordset.addnew

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

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

Recordset.Updata

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

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

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

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

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

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

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

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

1 只讀 2 獨(dú)占 3 可寫 4 自已可寫,別人可讀

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

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

VB.NET做的程序在其它機(jī)器上運(yùn)行時(shí)出現(xiàn)問題,求助!

缺少運(yùn)行庫

裝上.NETframework

和帶上引用的插件(工程屬性那有個(gè)引用頁)

.

VB.net 以下代碼,在取中文文件名時(shí)出亂碼,怎么辦?請教.

沒有指定字符集,根據(jù)頁面的設(shè)置,可以設(shè)置字符集為UTF-8或GB2312

vb.net的直接修改exe名稱后不運(yùn)行 為什么

舉例說明你是怎么修改的。

這要看程序是否檢測可執(zhí)行文件名,如果不檢測,應(yīng)該能運(yùn)行。

vb.net提示一個(gè)dll初始化失敗

vb.net提示一個(gè)dll初始化失敗,這個(gè)問題是因?yàn)閙soe.dll這個(gè)DLL文件失效了,重新注冊這個(gè)DLL文件就可以解決問題了。


當(dāng)前題目:vb.net文件名無效 vbs文件無效字符
轉(zhuǎn)載源于:http://weahome.cn/article/doojsjc.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部