當前位置:首頁 » 操作系統 » vb和資料庫

vb和資料庫

發布時間: 2022-05-23 22:08:55

Ⅰ VB和資料庫

這個問題讓人感覺好無奈,我以非專業人士的目光告訴你。
1、RS,,,CN是你 Set CN=*****後,這個CN object才有了功能。RS也是這樣。你應該說
ADODB.Connection,,,及 ADODB.Recordset這兩個東西,有啥區別才是
2、是不是每次訪問資料庫,RS和CN都需要關閉,感覺這問題有點怪,這個RS或CN一旦被設置成了某個object,它就背上了這個object的東西,不放下舊的,就不能再背新的,背兩種東西,它就累的受不了,就會叫喊「Error」。這么說,不知道你能理解不。

3、Connection是excut命令吧?記不清了,暫定為它吧,它連接庫後,不返回值。Recordset是Open是有返回值的。詳細這點,你再網路下,具體誰好,看你需求了,一般都是用的RS.Open。便於後面的具體操作。當然,excut也可以。

Ⅱ VB怎麼調用資料庫數據

VB可將sql結構化查詢語句賦值Ado(ActiveX 數據對象)或ADO Data 控制項,訪問和操作資料庫。

ADO (ActiveX 數據對象),這項新的數據訪問技術的特性包括:更簡單的對象模型;與其它 Microsoft 和非 Microsoft 的技術更好的集成;為本地和遠程數據數據提供的通用介面;可遠程訪問的和斷開的記錄集;用戶可訪問的數據綁定介面;以及層次結構的記錄集。

ADO Data 控制項, 這是一種新的、OLEDB 識別的數據源控制項,其功能與內部的 Data 控制項和 Remote Data 控制項十分相似,通過這種方式允許用戶用最少的代碼來創建資料庫應用程序。

Visual Basic 6.0 中,已經可以將任何 ADO/OLE DB 數據源綁定到任何 ADO/OLE DB 數據使用者上。在運行時,可以設置控制項的 DataSource 屬性來將控制項動態地綁定到數據源。可以創建用作數據源和數據使用者的類,並且通過新的 BindingsCollection 對象將這些類綁定在一起。可以創建與 ADO 數據控制項相似的、用作數據源的用戶控制項。還可以創建與 DataGrid 控制項相似的、復雜綁定的用戶控制項。

以下是經ADO (ActiveX 數據對象)訪問Access資料庫的實例代碼:

DimcnnAsNewConnection
DimrsAsNewRecordset
DimsqlAsString
DimARR
cnn.Open"Provider=Microsoft.Jet.OLEDB.4.0;DataSource=C:wdOld.mdb;PersistSecurityInfo=False"
sql="select故障名稱fromguzhang_bm"
rs.Opensql,cnn
Combo1.Text="故障名稱"
DoWhileNotrs.EOF
Combo1.AddItemrs("故障名稱")
rs.MoveNext'打開表
Loop
rs.Close
cnn.Close

以下是使用ADO Data 控制項訪問Access資料庫德實例代碼:

Adodc1.ConnectionString="Provider=Microsoft.Jet.OLEDB.4.0;DataSource="&App.Path&"wd.mdb;PersistSecurityInfo=False"
Adodc1.RecordSource="select*fromjishijilu"'whereshijianlike'%8112%'Andgyh_riqilike'%10%'"
Adodc1.Refresh
SetMSHFlexGrid1.DataSource=Adodc1
MSHFlexGrid1.Row=1
MSHFlexGrid1.ColSel=MSHFlexGrid1.Cols-1

Ⅲ VB如何連接資料庫

使用ADODC數據控制項,它與資料庫連接方式很多,並支持SQL結構化查詢語言,能實現動態查詢.但用控制項也要寫一些代碼,以達到應用程序的目的.
資料庫用VB6編程語言,對新手而言,如何用好ADODC控制項和DATAGRID控制項相當重要。具體做法:
新建工程時選數據工程,此時VB6集成調試環境左邊工具箱內已載入了有關資料庫編程必須的控制項。
然後在FORM1窗體中添加ADODC控制項和DATAGRID控制項,將DATAGRID1的屬性DATASOURCE選ADODC1,打開ADODC1控制項屬性頁使用連接字元串,選生成,在提供者選項中根據資料庫結構如*.MDB資料庫則選MICROSOFT jet 4.0 OLE DB Provider或其它連接引擎,然後按要求連接資料庫等。在ADODC1控制項屬性頁使用連接字元串空白文本窗口中就有一長串字元串,注意該字元串可復制到程序代碼用於編程。ADODC1控制項屬性頁的數據源內有命令文本(SQL)編寫窗口可編寫SQL查詢語言。該窗口的SQL語句可復制到程序代碼用於編程。
SQL查詢語言主要結構為:
Select 查詢欄位 from 表名 Where 查詢條件語句 [排序語句或分組語句]
查詢欄位必須分別用(西文)逗號分開或就用一個*號代替,上述查詢中排序語句建議最好應用。
SQL查詢語言如有錯程序運行時告訴你出錯,作相應改動即可。本人一般先按上述連接,SQL用"SELECT * FROM TabelName"作調試,無問題,用一個按鈕孔件將前述需復制的連接字元串和SQL查詢語言先復制於按鈕控制項的CLICK事件中備著,以便放著以後使用。然後刪去ADODC1孔件,再添加ADODC1控制項再添其他內容。
下給出一段數據連接代碼:
Private Sub Form_Load()
Text1 = ""
With Adodc1
Adodc1.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=E:\db1.mdb;Persist Security Info=False"
Adodc1.RecordSource = "select name from b1 order by name"
Adodc1.Refresh
DataGrid1.Refresh
End With
End Sub
SQL查詢語言多寫多用

Ⅳ VB和資料庫的鏈接

ADO部分:
一.用Adodc控制項連接資料庫
例:
Adodc1.ConnectionString = "DBQ=E:\system.mdb;Driver={Microsoft Access Driver (*.mdb)};pwd=123;"
Adodc1.RecordSource = "select * from 專業 where 專業名稱<>』123』"
Adodc1.Refresh
Set Text1.DataSource = Adodc1
Text1.DataField = "專業名稱"
二.不使用Adodc控制項,連接資料庫
Adodc控制項雖然簡單易用,但功能上受很多限制,速度也慢,能不用就不用。使用ADO,可以在代碼中動態改變綁定控制項的DataSouce屬性,所以控制項可以綁定到RecordSet對象上,並非一定要綁定到Adodc控制項,這一點比DAO方便多了。偶覺得這也進一步削弱了使用Adodc控制項的必要性(實際上偶從來沒正經用過Adodc控制項)。
首先,添加對ADO的引用,菜單「工程」->「引用」->Microsoft ActiveX Data Objects 2.5 Library(未必是2.5,2.1亦可)。也可以通過在窗體上放置一個Adodc控制項讓VB自動添加這個引用。
例1:本例沒有使用帶DSN的連接字元串, 作為替換方法,指定了ODBC 的驅動程序。指定DSN,需要通過「Windows 控制面板」對ODBC數據源進行定義,有點麻煩,而且將來打包安裝都是個問題。
Dim cn As New ADODB.Connection
Dim rs As New ADODB.Recordset
cn.Open "DBQ=E:\system.mdb;Driver={Microsoft Access Driver (*.mdb)};pwd=123;"
rs.Open "專業", cn, adOpenDynamic, adLockReadOnly, adCmdTable
Set Text1.DataSource = rs
Text1.DataField = "專業名稱"
例2:使用OLE DB介面是首選,比ODBC要快很多。正如MSDN所言,「對於 ADO 或 RDS 的程序員來說,理想的環境是每個數據源都具有一個 OLE DB 介面,以便 ADO 可以直接調用該數據源」。Access當然提供了OLE DB 介面,所以嘛,讓ODBC走遠點吧:)
Dim cn As New ADODB.Connection
Dim rs As New ADODB.Recordset
cn.Open "PROVIDER=Microsoft.Jet.OLEDB.4.0;Data Source=e:\system.mdb;Jet OLEDB:Database Password=123;"
rs.Open " select * from 專業 where 專業名稱<>』123』", cn, adOpenKeyset, adLockReadOnly, adCmdText
Do While Not rs.EOF
Debug.Print rs.Fields("專業名稱")
rs.MoveNext
Loop
三.得到資料庫中所有表的名字
用ADO得到所有表名,不像DAO那樣直接,所以很多人不知道怎麼做。偶也是有一天閑著無聊,亂七八糟做了半天試驗,偶然發現的這個東東。
首先,添加兩個引用:Microsoft ActiveX Data Objects 2.5 Library和Microsoft ADO Ext. 2.5 for DDL and Security
例:
Dim cn As New ADODB.Connection
Dim x As New ADOX.Catalog
cn.Open "PROVIDER=Microsoft.Jet.OLEDB.4.0;Data Source=e:\system.mdb;Jet OLEDB:Database Password=123;"
x.ActiveConnection = cn
Dim i As Long
For i = 0 To x.Tables.Count - 1
Debug.Print x.Tables(i).Name, x.Tables(i).Type
Next
四.壓縮資料庫
剛開始用ADO編程的時候,不知道怎麼實現資料庫的壓縮。後來偶然在一本書上看到了一個示例,趕緊記了下來。奇怪的是,從那以後,好像到處都可以見到用ADO壓縮資料庫的示例:)
首先,添加引用Microsoft Jet and Replication Objects 2.1 Library和Microsoft ActiveX Data Objects 2.1 Library
例:
Dim jj As New JRO.JetEngine
jj.CompactDatabase "PROVIDER=Microsoft.Jet.OLEDB.4.0;Data Source=e:\system.mdb;Jet OLEDB:Database Password=123;", "PROVIDER=Microsoft.Jet.OLEDB.4.0;Data Source=e:\system1.mdb;Jet OLEDB:Database Password=123;"
Kill "e:\system.mdb"
Name "e:\system1.mdb" As "e:\system.mdb"
註:這個方法同時實現對資料庫的修復,也可以實現對密碼的修改。ADO中專門用於修改密碼的方法偶還沒找到。
五.在資料庫中存放圖片
在ADO中,想在資料庫中存放圖片比DAO麻煩不少,它不能把綁定的圖片框中的圖像自動存入資料庫。2.1版以前,ADO程序員一般通過AppendChunk這個方法實現此目的,那可不是一般的麻煩,MSDN給出的示例有50多行。所以很多人乾脆在資料庫中存放圖片的路徑,顯示時再LoadPicture。
到了2.5版,ADO提供了Stream來解決這個問題,方便極了。
偶是在一本書中看到的這種方法,書上說,雖然Value是Field的預設屬性,在這里卻不可以省略。偶試驗了一下,即使不寫.Value,使用預設屬性,也可以正常工作。不過在本例中偶還是顯式指明了Value屬性。
首先,添加引用Microsoft ActiveX Data Objects 2.5 Library
例1:把圖片文件存入資料庫
Dim cn As New ADODB.Connection
cn.Open "DBQ=E:\db.mdb;Driver={Microsoft Access Driver (*.mdb)};"
Dim s As New ADODB.Stream
Dim rs As New ADODB.Recordset
rs.Open "圖片表", cn, adOpenDynamic, adLockOptimistic, adCmdTable
s.Type = adTypeBinary
s.Open
s.LoadFromFile "e:\Camcord.bmp"
rs.AddNew
rs.Fields("image").Value = s.Read()
rs.Update
例2:把資料庫中的圖像數據導出為文件
Dim cn As New ADODB.Connection
cn.Open "DBQ=E:\db.mdb;Driver={Microsoft Access Driver (*.mdb)};"
Dim s As New ADODB.Stream
Dim rs As New ADODB.Recordset
rs.Open "圖片表", cn, adOpenDynamic, adLockOptimistic, adCmdTable
s.Type = adTypeBinary
s.Open
s.Write rs.Fields("image").Value
s.SaveToFile "e:\xxx.bmp"
註:1.圖片表的image欄位類型為OLE 對象。
2.可以看出,這種方法並非只能用來存放圖片文件,實際上任何文件都可以通過這種方法存入資料庫,只不過好像沒什麼必要這么做。實際上,如果圖片很大數量又多,存入數據後,瀏覽速度會變得很慢,不如改為存放文件路徑。

Ⅳ 怎麼把VB 和資料庫連接起來

ado

//使用ADO控制項集動態打開ACCESS資料庫列程
//本方法主要面向客戶選擇目標ACCESS資料庫
//取代彈出的ConnectionString的設置對話框
//註:ADOTable和ADOQuery控制項的連接字串不同
//著名關心CSDN結貼率愛國人士-實用庫Tip No 1 - 2003-9-25
function FileName_DataBasePassWord(FileName:string; DataBasePassWord:string=''):string;
begin
FileName_DataBasePassWord:='Provider=Microsoft.Jet.OLEDB.4.0;'+
'User ID=Admin;Data Source='+
form1.OpenDialog1.FileName+ //資料庫文件路徑
';Mode=Share Deny None;Extended Properties="";'+
'Jet OLEDB:System database="";'+
'Jet OLEDB:Registry Path="";'+
'Jet OLEDB:Database Password='+
DataBasePassWord+ //資料庫密碼
';Jet OLEDB:Engine Type=5;'+
'Jet OLEDB:Database Locking Mode=1;'+
'Jet OLEDB:Global Partial Bulk Ops=2;'+
'Jet OLEDB:Global Bulk Transactions=1;'+
'Jet OLEDB:New Database Password="";'+
'Jet OLEDB:Create System Database=False;'+
'Jet OLEDB:Encrypt Database=False;'+
'Jet OLEDB:Don''t Copy Locale on Compact=False;'+
'Jet OLEDB:Compact Without Replica Repair=False;'+
'Jet OLEDB:SFP=False';
end;

procere TForm1.DynamicOpenAdoAccess_BtnClick(Sender: TObject);
begin
form1.OpenDialog1.Filter:='Text files (*.mdb)|*.MDB';
form1.OpenDialog1.DefaultExt:='MDB';
form1.OpenDialog1.InitialDir:=application.GetNamePath;
form1.OpenDialog1.Title:='指定Access資料庫Mdb文件的位置';
if form1.OpenDialog1.Execute then
begin
form1.ADOConnection1.LoginPrompt:=false;
//帶密碼資料庫的使用
//form1.ADOConnection1.ConnectionString:=FileName_DataBasePassWord(form1.OpenDialog1.FileName,'ghyghost');
//不帶密碼數據的使用
form1.ADOConnection1.ConnectionString:=FileName_DataBasePassWord(form1.OpenDialog1.FileName);
form1.ADOConnection1.Open;
form1.ADOQuery1.open; //ADOQuery1's SQL Properties is 'select * from [tablename]'
end;
end;

Ⅵ 資料庫是什麼意思,VB是拿來做什麼用的它們有什麼關系嗎

資料庫就是用來存儲數據的工具,可以在裡面對數據進行查詢插入刪除等操作,vb是編程工具,用來寫電腦軟體的,他們之間的關系是相互依存的,編寫程序離不開數據支持,沒有數據的程序是死的,而程序的數據就來自於資料庫

Ⅶ 怎麼將VB和資料庫聯系起來

vb和資料庫連接的方法主要有DAO和ADO
DAO是VB5.0的連接資料庫的方法,當然在6.0中可以繼續使用。主要就是用Data控制項連接資料庫,並用DBGrid控制項顯示資料庫的表。
ADO是VB6.0中的連接資料庫的方法,主要是用Adodc控制項連接資料庫,並用DataGrid控制項來顯示資料庫的表。
個人認為,兩種方法各有優勢,主要看個人喜好了。

Ⅷ vb與資料庫

資料庫中有一個學生表,這個表裡面有學號(stnum),姓名(stname),各科成績(gaoshu 、yingyu、wuli等等)和平均分等欄位。FORM5窗體有幾個文本框,著段代碼就是把這個窗體的幾個文本框的值錄入到資料庫學生成績表,並計算平均分輸入到這條記錄中。向資料庫表中錄入數據後打開新窗體,關閉本窗體。

Ⅸ VB與資料庫

其實VB連接資料庫就那麼幾條語句
隨便在網上打個VB連接資料庫都能找的到(access)
下面是一個教程,看看吧
http://down.520hack.com/donghua/200706/623/@LinkGate@-@LK@/vbdata.rar

Ⅹ VB結合資料庫

Imports System.Data.OleDb
Imports System.Windows.Forms.DataGridView
Public Class Form1
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim con As New OleDbConnection
Dim a As String
a = TextBox1.Text
'定義一個OLEDB命令並實例化他
Dim cmd As New OleDbCommand
'定義一個OLEDBReader方法來讀取資料庫
Dim dr As OleDbDataReader
'初始化con的連接屬性,使用OLEDB模式,數據源為:你指定下路徑 con.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Users\lenovo\Desktop\資料庫.mdb"
'打開OLEDB數據連接
con.Open()
'初始化OLEDB命令的連接屬性為con,這個需要你理解下
cmd.Connection = con
'初始化OLEDB命令的語句 就是查詢 什麼欄位從什麼表 條件是ID等於你在t1中輸入的內容
cmd.CommandText = "select 學號 from studentInfo where ID=" & TextBox1.Text & ""
'執行OLEDB命令以ExecuteReader()方式,並返回一個OLEDBReader,賦值給dr
dr = cmd.ExecuteReader()
'判斷下dr中是否有數據。如果有就把第一個值賦值給t2的值
If dr.Read() Then
TextBox2.Text = dr(0)
End If
'完成後關閉dr.con等釋放資源
dr.Close()
con.Close()
End Sub

End Class

這個實例已經試過,希望對你有用,望採納

熱點內容
微信指紋支付多少錢要用密碼 發布:2024-10-26 20:56:04 瀏覽:807
flash游戲反編譯 發布:2024-10-26 20:43:59 瀏覽:710
java的hashmap緩存 發布:2024-10-26 20:33:07 瀏覽:116
紅米2存儲空間不足 發布:2024-10-26 20:33:05 瀏覽:297
java源碼pdf 發布:2024-10-26 20:22:45 瀏覽:804
中文安卓編程 發布:2024-10-26 20:18:27 瀏覽:821
sql傳遞參數 發布:2024-10-26 20:06:57 瀏覽:248
安卓手機去哪裡找游戲 發布:2024-10-26 20:03:24 瀏覽:913
安卓手機圖標誤刪如何恢復 發布:2024-10-26 19:38:34 瀏覽:917
彈跳的編程 發布:2024-10-26 19:37:28 瀏覽:456