『壹』 vb資料庫的搜索
Dim
rs
As
ADODB.Recordset
Dim
CnStr
As
String,
sql
As
String
Dim
conn
As
New
ADODB.Connection
With
conn
If
.State
=
adStateOpen
Then
.Close
.ConnectionString
=
"Provider
=
Microsoft.Jet.OLEDB.4.0;Data
Source="
&
App.Path
&
"\Data1.mdb;Persist
Security
Info=False"
'連接資料庫
.CommandTimeout
=
300
.Open
End
With
sql="SELECT
[姓名]
FROM
01
where
[姓名]=張三"
這個是連接資料庫和查找的例子
『貳』 如何在vb程序中查找資料庫信息並顯示
要查找資料庫信息,關鍵是要解決鏈接資料庫的問題,下面簡述Vb如何SQL資料庫:
有兩種方法可以實現,一種是通過ODBC數據源的配置進行連接,一種是通過純代碼編輯進行連接,下面我們就詳細介紹一下這兩種連接方法。
ODBC數據源VB連接SQL資料庫
一、配置ODBC數據源
1、在控制面板中,雙擊管理工具,然後打開ODBC數據源管理器。
2、在「系統DSN」選項卡中,單擊「添加」按鈕,打開「創建新數據源」對話框,在「名稱」列表框中選擇「SQL Server」。選好單擊完成
3、在打開「建立新的數據源到SQL Server」對話框,在「名稱」文本框輸入新數據源的名稱,描述數據源按你理解的方式來寫(隨意)。「伺服器」就選擇你要連接到的伺服器。
4、選擇使用用戶輸入登錄的ID和密碼的SQL 驗證。選連接SQL默認設置
5、再下一步下一步,完成。測試數據源看連接是否成功就行了。成功後按確定。
二、VB中設置連接
1、添加部件Mircrosoft ADO Data Control 6.0(OLEDB),把部件拖到窗體。
2、對ADO部件點右鍵選屬性,選擇使用連接字元串,按生成。
3、選擇Mircosoft OLE DB Providar for SQL Server按下一步
4、
1)輸入伺服器名稱
2)使用指定的伺服器信息
3)在伺服器上選擇資料庫
這時就選擇你在SQL Server建好的資料庫就行了
5、測試連接可以看到連接是否成功!
通過代碼VB連接SQL資料庫
Public conn As New ADODB.Connection
Public rs As New ADODB.Recordset
Public addFlag As Boolean
Public Function OpenCn(ByVal Cip As String) As Boolean
Dim mag As String
On Error GoTo strerrmag
Set conn = New ADODB.Connection
conn.ConnectionTimeout = 25
conn.Provider = "sqloledb"
conn.Properties("data source").Value = Cip '伺服器的名字
conn.Properties("initial catalog").Value = "zqoa" '庫名
'conn.Properties("integrated security").Value = "SSPI" '登陸類型
conn.Properties("user id").Value = "sa"
conn.Properties("password").Value = "sa"
conn.Open
OpenCn = True
addFlag = True
Exit Function
strerrmag:
mag = "Data can't connect"
Call MsgBox(mag, vbOKOnly, "Error:Data connect")
addFlag = False
Exit Function
End Function
Public Sub cloCn()
On Error Resume Next
If conn.State <> adStateClosed Then conn.Close
Set conn = Nothing
End Sub
Public Function openRs(ByVal strsql As String) As Boolean '連接資料庫記錄集
Dim mag As String
Dim rpy As Boolean
On Error GoTo strerrmag
Set rs = New ADODB.Recordset
If addFlag = False Then rpy = True
With rs
.ActiveConnection = conn
.CursorLocation = adUseClient
.CursorType = adOpenKeyset
.LockType = adLockOptimistic
.Open strsql
End With
addFlag = True
openRs = True
End
'Exit Function
strerrmag:
mag = "data not connect"
Call MsgBox(mag, vbOKOnly, "error:connect")
openRs = False
End
'Exit Function
End Function
Public Sub cloRs()
On Error Resume Next
If rs.State <> adStateClosed Then rs.Clone
Set rs = Nothing
End Sub
『叄』 vb.net 中如何使用SQL語句查詢資料庫中的數據
1、首先打開Visual Studio 2008代碼窗口,添加引用。
『肆』 在VB怎麼查詢資料庫中的數據啊!
1.一個簡單的查詢的例子:
'*定義一個連接
Dim Conn As ADODB.Connection
'*定義一個記錄集
Dim mrc As ADODB.Recordset
'*分別實例化
Set Conn = New ADODB.Connection
set mrc =New ADODB.Recordset
'*定義一個連接字元串
dim ConnectString as string
ConnectString="provider=microsoft.jet.oledb.4.0;data source=" & App.Path & "\data\資料庫名.mdb;jet oledb:database password=資料庫密碼"
'*打開連接
Conn1.Open ConnectString
'*定義游標位置
Conn1.CursorLocation = adUseClient
'*查詢記錄集(從student表中找出名子為"張三"的記錄)
mrc.open "select * from student where name='張三'",Conn, adOpenKeyset, adLockOptimistic
'*現在你已經得到了你想要查詢的記錄集了,那就是mrc
'*你可以把此記錄集與DataGrid榜定,用datagrid顯示你查詢的記錄
set me.datagrid.datasource=mrc
『伍』 VB 資料庫信息查詢
沒用過,是不是這樣:
data1.RecordSource = "select * from 表名 where 用戶姓名 = '" & Label1.Caption & "'"
『陸』 VB查詢資料庫中的數值
你的題寫的我不是很明白
情況一:
是根據指定兩個欄位的值查詢,可以用下面的代碼。
'將兩個combo控制項的style屬性設置為2,下面將生成SQL查詢語句。
'我是直接在這寫的,沒有在VB下面試,不過應該是不會有錯的吧
dim sql
sql="select * from gearka"
if combo1.ListIndex <>-1 or combo2.ListIndex<>-1 then
sql=sql & " where"
end if
if combo1.ListIndex<>-1 then
sql =sql & " 欄位名1='"& combo1.text &"'"
if combo2.ListIndex<>-1 then
sql=sql & " and"
end if
end if
if combo2.ListIndex<>-1 then
sql =sql & " 欄位名2='"& combo2.text &"'"
end if
情況二:
情況比較復雜(要打好多字^_^)
資料庫 例
名稱 | 00年價格 | 01年價格 | 02年價格
手機 | 1000元 | 1200元 | 1300元
電腦 | 3000元 | 2800元 | 5000元
大餅 | 5000元 | 6000元 | 7000元
combo1 | combo2
手 機 | 00年價格
電 腦 | 01年價格
大 餅 | 02年價格
如果是這樣用下面SQL語句就可以
sql="select " & combo2.text & " from where 產品名稱='"& combo1.text &"'"
情況三:
我也不會了^_^
如果對您有幫助,請記得採納為滿意答案,謝謝!祝您生活愉快!
『柒』 VB如何實現查詢資料庫並顯示出來
可以快速導出使用excel 就有該功能
PublicFunctionExportToExcel(ByValstrOpenAsString,TitleAsString,diAsString,conAsADODB.Connection)
'*********************************************************
'*名稱:ExporToExcel
'*功能:導出數據到EXCEL'*用法:ExporToExcel(strOpen查詢字元串,titile
'*excel標題,di保存路徑,con資料庫連接地址)
'*********************************************************
lok:OnErrorGoToer
Screen.MousePointer=11
DimRs_DataAsNewADODB.Recordset
DimIrowcountAsLong
DimIcolcountAsLong
DimXlAppAsNewExcel.Application
DimxlbookAsExcel.Workbook
DimxlSheetAsExcel.Worksheet
DimxlQueryAsExcel.QueryTable
WithRs_Data
If.State=adStateOpenThen
.Close
EndIf
.ActiveConnection=con
.CursorLocation=adUseClient
.CursorType=adOpenStatic
.LockType=adLockReadOnly
.Source=strOpen
DoEvents
'Debug.PrintstrOpen
.Open
EndWith
Debug.PrintstrOpen
'SetRs_Data=Open_rst_from_str(strOpen)
WithRs_Data
If.RecordCount<1Then
MsgBox("沒有記錄!")
Screen.MousePointer=0
ExitFunction
EndIf
'記錄總數
Irowcount=.RecordCount
'欄位總數
Icolcount=.Fields.Count
EndWith
SetXlApp=CreateObject("Excel.Application")
Setxlbook=Nothing
SetxlSheet=Nothing
Setxlbook=XlApp.Workbooks().Add
SetxlSheet=xlbook.Worksheets("sheet1")
'添加查詢語句,導入EXCEL數據
SetxlQuery=xlSheet.QueryTables.Add(Rs_Data,xlSheet.Range("a1"))
WithxlQuery
.FieldNames=True
.RowNumbers=False
.FillAdjacentFormulas=False
.PreserveFormatting=True
.RefreshOnFileOpen=False
.BackgroundQuery=True
.RefreshStyle=xlInsertDeleteCells
.SavePassword=True
.SaveData=True
.AdjustColumnWidth=True
.RefreshPeriod=0
.PreserveColumnInfo=True
EndWith
xlQuery.FieldNames=True'顯示欄位名
xlQuery.Refresh
DimiAsInteger,ZdAsString
WithxlSheet
Fori=1To6
Zd=.Range(.Cells(1,1),.Cells(1,Icolcount)).item(1,i)
'.Range(.Cells(1,1),.Cells(1,Icolcount)).Item(1,i)=Lm_YwToZw(Zd)
Next
.Range(.Cells(1,1),.Cells(1,Icolcount)).Font.name="黑體"
'設標題為黑體字
'.Range(.Cells(1,1),.Cells(1,Icolcount)).Font.Bold=True
'標題字體加粗
.Range(.Cells(1,1),.Cells(Irowcount+1,Icolcount)).Borders.LineStyle=xlContinuous
'.Range(.Cells(Irowcount+2,Icolcount)).Text=Zje
'設表格邊框樣式
EndWith
XlApp.Visible=True
XlApp.Application.Visible=True
'xlBook.SaveAsdi
SetXlApp=Nothing'"交還控制給Excel
Setxlbook=Nothing
SetxlSheet=Nothing
Screen.MousePointer=0
ExitFunction
er:
'Dispose_Err
MsgBoxerr.Description&"從新導報表,請等待!"
GoTolok:
EndFunction
使用這個模塊就可以,你可以看看引用的函數即可
『捌』 急!VB怎樣實現資料庫的查找功能
我暈,模糊查詢,這要看你數據表的大小了啊,大了可真不好弄,小了列舉就可以
『玖』 VB6.0中怎樣使用data控制項實現資料庫查找功能
1、使用data控制項的FindFirst方法可以實現資料庫記錄的查找。
2、工具:vb6。
3、具體實現方法:
a)在窗體上添加data1、dbgrid1、text1、command1、label1
b)在dbgrid1的DataSource屬性里選擇data1
c)實現代碼如下:
PrivateSubCommand1_Click()
'查找定位記錄
Data1.Recordset.FindFirst"CategoryID="&Text1.Text
DBGrid1.DataSource
EndSub
PrivateSubForm_Load()
Data1.Connect="Access2000;"'設置資料庫類型
Data1.DatabaseName="C:db1.MDB"'連接資料庫
Data1.RecordSource="Categories"'資料庫中的表
Data1.Refresh'打開資料庫
EndSub
4、注意:資料庫可以使用vb6文件夾內的NWIND.MDB
『拾』 VB中查詢資料庫內容方法
多條件混合模糊搜索
"select * from 表名 where 欄位名 Like'%" & text1.text & "%'and 欄位名 like'%" & combo1.text & "%' and 欄位名 like'%" & text2.text & "%'"
例子
Dim conn As New ADODB.Connection
Dim rs As New ADODB.Recordset
Dim strsql As String
Dim cnstr As String
Private Sub Form_Load() '窗口打開時,連接資料庫
conn.CursorLocation = adUseClient
cnstr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source= db1.mdb;Jet OLEDB:Database Password=" '修改成你的數據為地址/密碼
conn.ConnectionString = cnstr
conn.Open cnstr
End Sub
Private Sub Command1_Click()
if rs.state=adstateopen then rs.close'記錄集打開時則關閉記錄集
strsql ="select * from 表名 where 欄位名 Like'%" & text1.text & "%'and 欄位名 like'%" & combo1.text & "%' and 欄位名 like'%" & text2.text & "%'"
rs.Open strsql, conn, 3, 3
set DataGrid1.DataSource =rs
'這時適當調整一下datagird控制項的格式(略)
End Sub
Private sub form_unload()
conn.close
end sub