Dim db As ADODB.Connection
  
  Dim sql As String
  Dim sqlstr As String
  Dim sConnect As String
  sConnect = "PROVIDER=MSDASQL;dsn=mssql;uid=sa;pwd=;"
  
DataGrid1.HeadLines = 1.3
  '连接数据库。
  '打开连接
Set db = New Connection
db.Open sConnect'设置筛选条件。
  sql = "select 姓名,职位,部门,地址 from 联系人表 "
 strsql = sql + "where" + combo2.Text
 If Option1().Value = 1 Then
  strsql = strsql + "='"
  strsql = strsql + Text1.Text + "'"
  Else
  strsql = strsql + "like'%"
   strsql = strsql + Text1.Text + "%'"
   End If
   '设置排列方式。
   strsql = strsql + "order by" + Combo1.Text
   '用Datagrid控件
   
 db.Execute strsql
db.Close

解决方案 »

  1.   

    Dim db As ADODB.Connection
    Dim rs As New ADODB.Recordset  '增加一个记录集对象,用来与DataGrid绑定
    ......
    '设置排列方式。
       strsql = strsql + "order by" + Combo1.Text
    Set rs = db.Execute strsql
       '用Datagrid控件
       Set DataGrid1.DataSource=rsdb.Close
      

  2.   

    Set rs = db.Execute strsql
    -----------------------------
    Set rs = db.Execute(strsql)
      

  3.   

    另外,记得设置客户端游标......
    Set db = New Connection
    db.CursorLocation=adUseClient  '设置客户端游标
    db.Open sConnect
    ......
      

  4.   

    楼上说的很重要,用客户端游标。否则不显示内容。此外需要一个记录集对象:   '用Datagrid控件
     Dim rs As New ADODB.Recordset  
     rs.Open strsql, DB
     
     Set DataGrid1.DataSource = rs