我用的是单机且不想用SQL Server,现在要以:“邮政编码,公司名称,日期”进行组合查询,结果显示在MSHFlexgrid中,我该怎样去连接数据库和进行查询,望高手指点(请尽量详细点,最好有代码!因为我刚开始学VB!)

解决方案 »

  1.   

    这是我自己的代码,稍改了一下,没细看有错的话自己改吧,思路有了,无非就是组合条件而已:Dim rs As New ADODB.Recordset
    Dim expr(1 To 3) As String
    Dim str As String
        
        str = ""
        For i = 1 To 3
            expr(i) = ""
        Next
        
        If Trim(txtDate) <> "" And IsDate(Trim(txtDate1)) Then
            expr(1) = "日期 = #" & Trim(txtDate) & "#"
        End If
            
        If Trim(txtCode) <> "" Then
            expr(2) = "邮政编码 = '" & Trim(txtCode) & "'"
        End If
        
        If Trim(txtName) <> "" Then
            expr(3) = "公司名称 = '" & Trim(txtName) & "'"
        End If
        
        For i = 1 To 3
            If Trim(expr(i)) <> "" Then
                If Trim(str) = "" Then
                    str = expr(i)
                Else
                    str = str & " and " & expr(i)
                End If
            End If
        Next
        
        If str <> "" Then
            str = " WHERE " & str
        End If
        rs.Open "SELECT * FROM table1" & str, cn, adOpenDynamic, adLockReadOnly
        
        Set Grid1.DataSource = rs