想在的datagrid表格中直接输入一个数据,然后程序自动在数据库内查找与该数据匹配的数据,并将找到的该数据所在的行余下的数据自动在datagrid中显示出来,请问哪位大虾可以帮忙说明一下流程和代码!

解决方案 »

  1.   

    似乎应该使用TEXTBOX控件输入你需查询的数据,在Text1_KeyDown事件代码中使用SQL查询语句寻找匹配的数据,可以是准确或模糊查询。
    以下是此种查询的具体代码:
    Private Sub Text1_KeyDown(KeyCode As Integer, Shift As Integer)
        Text1 = UCase$(Text1)
        Adodc1.ConnectionString = "Provider=MSDASQL.1;Persist Security Info=False;Data Source=jwl_dbf"
        Adodc1.RecordSource = "select * from JWCK_BM where " & _
        " js_dm>='" & Text1 & "' order by js_dm"
        Adodc1.Refresh
        Text1.SetFocus
        n = Len(Text1)
        Text1.SelStart = n
        Text1.SelLength = 1
        DataGrid1.Visible = True
    End Sub对于上面的Adodc1.ConnectionString 及Adodc1.RecordSource 按你实际情况修改。
      

  2.   

    补充一点:
    Adodc1.RecordSource 的赋值式右边就是SQL查询语句。
      

  3.   

    这位大哥,先谢谢了,但是我们老师要求的是要在datagrid中输入数据的,然后直接就直接在表格中显示匹配记录中的余下的数据的,好像在VFP中可以实现的,在VB中不能实现吗?麻烦了.....
      

  4.   

    那必须在使用ADO数据控件连接相应数据库及表,对记录集执行AddNew,DATAGRID控件才能进行编辑.
      

  5.   

    datagrid没有办法在向单元格输入数据的时候就产生事件来连接查找数据库吗?
    譬如说validate事件,验证你输入的单元格的值是否与数据库中的指定的表的记录中的列值是否匹配,如果匹配就将该条记录中的其他列值输出到datagrid中,这样行的通吗?
    麻烦了····想到头痛都搞不出来.....