跪求vb查询数据库数值的程序

跪求vb查询数据库数值的程序,第1张

你的题写的我不是很明白

情况一:

是根据指定两个字段的值查询,可以用下面的代码。

'将两个combo控件的style属性设置为2,下面将生成SQL查询语句。

'我是直接在这写的,没有在VB下面试,不过应该是不会有错的吧

dim

sql

sql="select

from

gearka"

if

combo1ListIndex

<>-1

or

combo2ListIndex<>-1

then

sql=sql

&

"

where"

end

if

if

combo1ListIndex<>-1

then

sql

=sql

&

"

字段名1='"&

combo1text

&"'"

if

combo2ListIndex<>-1

then

sql=sql

&

"

and"

end

if

end

if

if

combo2ListIndex<>-1

then

sql

=sql

&

"

字段名2='"&

combo2text

&"'"

end

if

情况二:

情况比较复杂(要打好多字^_^)

数据库

名称

|

00年价格

|

01年价格

|

02年价格

手机

|

1000元

|

1200元

|

1300元

电脑

|

3000元

|

2800元

|

5000元

大饼

|

5000元

|

6000元

|

7000元

combo1

|

combo2

|

00年价格

|

01年价格

|

02年价格

如果是这样用下面SQL语句就可以

sql="select

"

&

combo2text

&

"

from

where

产品名称='"&

combo1text

&"'"

情况三:

我也不会了^_^

楼主,你是不是直接把你编好的那个exe文件考到别的电脑上运行了

楼主,因为你编程的时候调用了一些别的组件,而这些组件是你安装vb的时候安装到电脑里面去的,也就是说别的电脑里面没有

这样当你把在你的电脑上写的程序拿到别的电脑上运行的时候,这个程序需要调用这个组件,但是在那个电脑上没有,所以就会出现这个错误了

解决方法有3个:

1把MCI32OCX这个文件拷贝出来到他的电脑上,然后给注册一下(这个办法比较麻烦)

2用vb自带的package & deployment向导这个程序把你的程序打包一下,然后在他的电脑上安装(这是最正规的办法)

3最简单的办法就是,在他的电脑里面安装一下vb,这样就能肯定能运行了(这个办法最适合新手)

如果你的数据库文件在你的程序的根目录中,在打包时选择文件时选择数据库文件即可,这样在安装时,数据库文件会自动安装在安装目录。

如果数据库文件不是在你的程序目录的根目录,不可以在打包文件中加载,因为这样数据库链接路径不同,安装后不能链接数据库。只能在安装后将数据库目录拷贝到相应的目录中。

既然是多方式模糊查询,那么必须具备几个条件:

1、首先有查询方式的选择框,还有查询需要的关键字的输入框;

2、模糊查询结果不是一条记录,那么必须将查询出的所有结果在列表框控件中显示出来;

3、点击列表框中的一条记录,在文本框中显示这条记录的详细内容。

我比较喜欢用MSFlexGrid控件显示查询结果,下面给你一个比较实用的范例:

Private Sub Command1_Click() '查询

If Combo1Text = "" Then

MsgBox "你没有选择查询方式,请选择!", 16, "错误!"

Exit Sub

End If

If Text1Text = "" Then

MsgBox "你没有填写关键字,请填写!", 16, "错误!"

Exit Sub

End If

If Combo1Text = "查询条件1" Then

strSQL = "Select From 数据表名 字段名1 Like '%" & Text1Text & "%'"

ElseIf Combo1Text = "查询条件2" Then

strSQL = "Select From 数据表名 Where 字段名2 Like '%" & Text1Text & "%'"

ElseIf Combo1Text = "查询条件3" Then

strSQL = "Select From 数据表名 Where 字段名3 Like '%" & Text1Text & "%'"

End If

Call SJK(db) '数据库连接函数

RSOpen strSQL, db, 2, 2

Do While Not RSEOF

SST = SST + 1

RSMoveNext

Loop

RSClose

Set RS = Nothing

If SST = 0 Then

MsgBox "你没有你查询的记录!", 16, "无记录!"

With MSFlexGrid1

Cols = 3

Rows = 1

TextMatrix(0, 0) = " 序号"

TextMatrix(0, 1) = " 姓名"

ColWidth(0) = 1000

ColWidth(1) = 1000

ColWidth(2) = 0

End With

dbClose

Set db = Nothing

Exit Sub

End If

With MSFlexGrid1

Cols = 3

Rows = SST + 1

TextMatrix(0, 0) = " 序号"

TextMatrix(0, 1) = " 姓名"

ColWidth(0) = 1000

ColWidth(1) = 1000

ColWidth(2) = 0

RSOpen strSQL, db, 2, 2

For I = 1 To SST

TextMatrix(I, 0) = I

TextMatrix(I, 1) = RS!姓名

If Option1(0)Value = True Then

TextMatrix(I, 2) = RS!SID

ElseIf Option1(1)Value = True Then

TextMatrix(I, 2) = RS!SID

ElseIf Option1(2)Value = True Then

TextMatrix(I, 2) = RS!SID

ElseIf Option1(3)Value = True Then

TextMatrix(I, 2) = RS!ZID

ElseIf Option1(4)Value = True Then

TextMatrix(I, 2) = RS!SID

End If

RSMoveNext

Next I

RSClose

Set RS = Nothing

End With

dbClose

Set db = Nothing

Label1(2)Caption = "本次查询结果" & SST & "条"

End Sub

Private Sub MSFlexGrid1_Click()

If Not Val(Trim(MSFlexGrid1TextMatrix(MSFlexGrid1Row, 2))) = 0 Then

PKID = Val(Trim(MSFlexGrid1TextMatrix(MSFlexGrid1Row, 2)))

Call SJK(db)

strSQL = "select from 数据表名 Where ID=" & PKID & " Order By ID"

RSOpen strSQL, db, 3, 3

Text2(0)Text = RS!字段1

Text2(1)Text = RS!字段2

Text2(2)Text = RS!字段3

Text2(3)Text = RS!字段4

Text2(4)Text = RS!字段5

Text2(5)Text = RS!字段6

Text2(6)Text = RS!字段7

Text2(7)Text = RS!字段8

RSClose

Set RS = Nothing

dbClose

Set db = Nothing

End If

End Sub

以上就是关于跪求vb查询数据库数值的程序全部的内容,包括:跪求vb查询数据库数值的程序、为什么VB做的数据库程序在别人的电脑打开不了、VB数据库编程,程序做好后,如何把数据库放到安装文件等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/9303532.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-27
下一篇 2023-04-27

发表评论

登录后才能评论

评论列表(0条)

保存