回 帖 发 新 帖 刷新版面

主题:VB中如何用combo控件查询access数据库?

例如有两个combo控件:
combo1“姓名”下拉菜单:张三,李四,王五;
combo2“科目”下拉菜单:语文,数学,英语;
现可有access数据库表:
姓名  语文 数学 英语
张三  80    90    80
李四  90    80    80
王五  90    80    90
还有一个文本控件text1,和一个命令控件command1。
要求根据两个combo下拉菜单的选择,点击命令按钮command1确定后,在文本控件text1输出相应的成绩。
我刚学VB,只会用adodc和datagrid控件,调出显示出来。还没找出上面的解决方法。请哪位高人能够不吝赐教,详细解说一下。在此多表谢意!

回复列表 (共10个回复)

沙发

建立一个记录集。
这个记录集的内容来自一个查询语句的结果。
查询语句的查询字符串如下
"select '" & combo2.text & "' from 表 where 姓名 = '" & combo1.text & "'"

板凳

[quote]建立一个记录集。
这个记录集的内容来自一个查询语句的结果。
查询语句的查询字符串如下
"select '" & combo2.text & "' from 表 where 姓名 = '" & combo1.text & "'"[/quote]
SQL倒是会点了。但这个记录集怎么建立的呢?和combo怎么建立联系

3 楼

dim 记录集 as ……
set 记录集=……
text1=记录集.f……

4 楼

[quote]dim 记录集 as ……
set 记录集=……
text1=记录集.f……[/quote]
在combo控件的list已经添加了下拉菜单。请你看下程序后面几句怎么写呢?劳驾
Option Explicit
   Dim conn As ADODB.Connection
   Dim rs As ADODB.Recordset
Private Sub Command1_Click()
   Set conn = New ADODB.Connection
   Set rs = New ADODB.Recordset
   conn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;" & _
                        "Data Source=" & App.Path & "\科目.mdb;" & _
                        "Persist Security Info=False"
   conn.Open                                               '打开连接

   rs.Open "select '&combo2.text&' from 成绩 'where 姓名 = '&combo1.text&", conn, adOpenKeyset

   Text1.Text =
End Sub
[em18]

5 楼

我无语了。
说了的你有不看,总坚持自己那一套。谁能给你说得醒?

6 楼


Text1.Text =rs(0)

7 楼


Option Explicit
   Dim conn As ADODB.Connection
   Dim rs As ADODB.Recordset
Private Sub Command1_Click()
   Set conn = New ADODB.Connection
   Set rs = New ADODB.Recordset
   conn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;" & _
                        "Data Source=" & App.Path & "\科目.mdb;" & _
                        "Persist Security Info=False"
   conn.Open                                               '打开连接

   rs.Open "select '&combo2.text&' from 成绩 where 姓名 = '"&combo1.text&"'", conn, adOpenKeyset

   Text1.Text =rst(0)
End Sub

8 楼

不是不看,是不懂,现在明白点了。呵呵

9 楼

[quote]
Option Explicit
   Dim conn As ADODB.Connection
   Dim rs As ADODB.Recordset
Private Sub Command1_Click()
   Set conn = New ADODB.Connection
   Set rs = New ADODB.Recordset
   conn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;" & _
                        "Data Source=" & App.Path & "\科目.mdb;" & _
                        "Persist Security Info=False"
   conn.Open                                               '打开连接

   rs.Open "select '&combo2.text&' from 成绩 where 姓名 = '"&combo1.text&"'", conn, adOpenKeyset

   Text1.Text =rst(0)
End Sub
[/quote]
是rs,不是rst吧,多谢了!

10 楼


[url=http://www.yingxiaoshipeixun.com]点击这里[/url]你就知道了

我来回复

您尚未登录,请登录后再回复。点此登录或注册