问题:
本人用VB打开一Access数据库,进行查询,程序在有VB环境下运行正常。但用InstallShield8.0进行打包后部署到其他机器上,发生了有的机器能用,有的机器不能用。不能查询的机器程序不报告错,但查询不出来内容。我通过text框把查询语句打出来,在Access数据库上运行正常。但就在程序里查不到,请教各位高手,问题如何解决。程序SQL内容如下:
mDataPath = CStr(App.Path) + "\data\DigACS.mdb"Public Function getDataPath() As String
    getDataPath = mDataPath
End FunctionPrivate Function selectTime(ByVal sName As String) As Boolean   '从数据库取 初始化信息
    Dim adoConn As New ADODB.Connection
    Dim adoRs As New ADODB.Recordset
    Dim SQL As String    On Error GoTo ado_Err    With adoConn
        .ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & _
                             getDataPath() & ";Persist Security Info=False"
        .CursorLocation = adUseClient
        .Open
    End With
    SQL = " SELECT MIN(b.evttime) AS MinDate, MAX(b.evttime) AS MaxDate" _
        + " FROM users AS a INNER JOIN trans_normal AS b ON a.userid=b.userid " _
        + " WHERE (a.name = '" + sName + "')" _
        + " GROUP BY format(b.evttime,'yyyy-mm-dd')" _
        + " ORDER BY MIN(b.evttime) DESC "
    Text1.Text = SQL
    Set adoRs = adoConn.Execute(SQL)
    adoRs.MoveFirst
    Text3.Text = ""
    While Not adoRs.EOF
        Dim sStartTime As String
        Dim sEndtime As String
        If IsNull(adoRs.Fields(0).Value) Then
            sStartTime = ""
        Else
            sStartTime = CStr(adoRs.Fields(0).Value)
        End If
        If IsNull(adoRs.Fields(1).Value) Then
            sEndtime = ""
        Else
            sEndtime = CStr(adoRs.Fields(1).Value)
        End If
        sStartTime = compareStartTime(sStartTime)
        sEndtime = compareEndTime(sEndtime)
        Text3.Text = selectName.Text & " ," & sStartTime & ", " & sEndtime & ", " & selectDept.Text + vbCrLf + Text3.Text
        MSFlexGrid1.AddItem selectName.Text & vbTab & sStartTime & vbTab & sEndtime & vbTab & selectDept.Text
        adoRs.MoveNext
    Wend    If adoRs.State = adStateOpen Then adoRs.Close
    If adoConn.State = adStateOpen Then adoConn.Close
    Set adoRs = Nothing
    Set adoConn = Nothing
    MSFlexGrid1.RemoveItem 1
    Exit Functionado_Err:
    If adoRs.State = adStateOpen Then adoRs.Close
    If adoConn.State = adStateOpen Then adoConn.Close
    Set adoRs = Nothing
    Set adoConn = Nothing
End FunctionText3.Text 显示的查询语句是
SELECT MIN(b.evttime) AS MinDate, MAX(b.evttime) AS MaxDate FROM users AS a INNER JOIN trans_normal AS b ON a.userid=b.userid  WHERE (a.name = '张三') GROUP BY format(b.evttime,'yyyy-mm-dd') ORDER BY MIN(b.evttime) DESC 此语句在数据库中查询没问题,只是在部分客户机就是无法查询出内容
请高手指点...........