‘壹’ 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