我建立了一个access数据库,名称为student
表名为 学生系统
学号 姓名
1234 王某
3456 李某我用adodc 和data grid 连接绑定了student
在界面有两个text和一个commmnd
我想在text1 输入学号,点击commnd后,在text2显示姓名
代码
Private Sub Command1_Click()
Dim num As String
num = Text1.Text
Adodc1.RecordSource = "select 学生系统.姓名 from 学生系统 where 学生系统.学号 = num"
Text2.Text = Adodc1.Recordset("姓名")
End Sub但是姓名始终是王某
输入3456 也显示王某

解决方案 »

  1.   


    Private Sub Command1_Click() 
    Dim num As String 
    num = Text1.Text 
    Adodc1.RecordSource = "select 学生系统.姓名 from 学生系统 where 学生系统.学号 = '" & num & "' " 
    Adodc1.refresh
    Text2.Text = Adodc1.Recordset.fields("姓名") 
    End Sub 
      

  2.   


    Private Sub Command1_Click() 
    Dim num As String 
    num = Text1.Text 
    Adodc1.RecordSource = "select 学生系统.姓名 from 学生系统 where 学生系统.学号 = '" & num & "'" 
    Text2.Text = Adodc1.Recordset.Fields("姓名") 
    End Sub 
      

  3.   

    如果学号不是字符类型,是数字类型:
    Adodc1.RecordSource = "select 学生系统.姓名 from 学生系统 where 学生系统.学号 = " & num 
      

  4.   


    分析错误提示......也可以这样写代码:
    dim sql as string
    sql="select 学生系统.姓名 from 学生系统 where 学生系统.学号 = " & num 
    debug.print sql然后在立即窗口看看有没有问题,没有问题就复制语句,放到ACCESS查询页中去调试......
      

  5.   

    Adodc1属性ConnectionString 的赋值句呢?
      

  6.   

    Provider=Microsoft.Jet.OLEDB.3.51;Persist Security Info=False;Data Source=E:\myvb\xuesheng.mdb
    这连接上了吧
    初学vb
    多看看,分析一下。
    就是怎么实现,输入学号,显示对应姓名
      

  7.   


    Private Sub Command1_Click()
        Adodc1.ConnectionString = "Provider=Microsoft.Jet.OLEDB.3.51;Persist Security Info=False;Data Source=E:\myvb\xuesheng.mdb "
        'Adodc1.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=E:\myvb\xuesheng.mdb;Persist Security Info=False"
        Dim num As String
        num = Text1.Text
        Adodc1.RecordSource = "select 学生系统.姓名 from 学生系统 where 学生系统.学号 ='" & num & "'"
        Adodc1.Refresh
        If Adodc1.Recordset.RecordCount > 0 Then
            Text2.Text = Adodc1.Recordset(1)
        End If
    End Sub如果你的ACCESS数据库是2003版本以上,请使用Microsoft.Jet.OLEDB.4.0
      

  8.   

    请删除你的ADODC1控件,然后在添加ADODC1控件,这样做可将ADODC1控件属性页的设置恢复缺省设置.Private Sub Command1_Click()
        Adodc1.ConnectionString = "Provider=Microsoft.Jet.OLEDB.3.51;Persist Security Info=False;Data Source=E:\myvb\xuesheng.mdb "
        'Adodc1.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=E:\myvb\xuesheng.mdb;Persist Security Info=False"
        Dim num As String
        num = Text1.Text
        Adodc1.RecordSource = "select 姓名 from 学生系统 where 学号 ='" & num & "'"
        Adodc1.Refresh
        If Adodc1.Recordset.RecordCount > 0 Then
            Text2.Text = Adodc1.Recordset(0)
        End If
    End Sub