一个名为"表1"的表,三个字段:"名称","型号","单价"。窗体上有adodc1,datagrid1,text1,按钮1,adodc1已和数据源连好。我需要的是在text1里输入名称,点击
按钮1,datagrid1能列出所有"名称"=text1.text的信息。代码如下:Private Sub Command1_Click()
Dim strsql As String
strsql = "select * from 表1 where 名称 like '*" & Text1.Text & "*'"
Adodc1.RecordSource = strsql
End Sub
运行后datagrid1是空的,请问什么地方错了.

解决方案 »

  1.   

    有这句吗?
    set datagrid1.datasource=adodc1         '将adodc1记录集传给datagrid1
      

  2.   

    datagrid1.datasource我是用手动设置的。
      

  3.   

    Private Sub Command1_Click()
    Dim strsql As String
    Dim rstTest As ADODB.Recordset
    strsql = "select * from 表1 where 名称 like '*" & Text1.Text & "*'"
    rstTest.open strsql
    set Adodc1.RecordSource = strsql
    End Sub
      

  4.   

    当然不错了!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
    Private Sub Command1_Click()
     Dim ADOCon As New ADODB.Connection 'ADODB Connection对象
     Dim ADORst As New ADODB.Recordset 'ADODB Recordset 对象
    ADOCon .CursorLocation = adUseClient
    Dim strsql As String
    strsql = "select * from 表1 where 名称 like '*" & Text1.Text & "*'"ADORst.open strsql ,ADOCon 
    set Adodc1.RecordSource = ADORst
    set datagrid1.RecordSource = ADORstEnd Sub
      

  5.   

    现在的问题是如果不在adodc1的recordsource属性栏里设置而是用代码写的话,一运行就会提示出错“找不到记录源”
      

  6.   

    看看这段代码行不行:
        Dim AdoRS As Recordset  AdoRS.Open "select * from 表1  where 名称 like '*" & Text1.Text & "*'",adodc1,adOpenStatic, adLockOptimistic得到的结果应该是符合条件的记录集
      

  7.   

    你加這句set datagrid1.datasource=adodc1   就行了,偶最不喜歡一邊屬性設置,一邊代碼其實還是datagrid不支持刷新