那位指点一下 我有一个程序是VB和sql做的,sql有一个字段叫做维护时间 类型是datetime 我想用DateDiff函数做日期比较 但是只能比较维护时间的第一行日期 我想让只要比较所有维护时间里的数值!  (我问了问,有人说是数据类型不匹配,我改成了m = DateDiff("d", rs("维护时间"), Now) 改成 m = DateDiff("d", rs("sql"), Now) 也报错 希望高人指点 代码如下:Dim m As Integer
Set conn = New ADODB.Connection
Set rs = New ADODB.Recordset    conn.ConnectionString = "Driver={sql server};server=niy;uid=;pwd=;database=sb"
conn.ConnectionTimeout = 30
conn.Open
sql = "select 维护时间 from 维护管理"
rs.Open sql, conn, adOpenKeyset, adLockPessimistic
m = DateDiff("d", rs("维护时间"), Now)
If m = 0 Then
Text1.Text = m
Print
End If
End Sub

解决方案 »

  1.   

    sql = "select DateDiff('d', rs!维护时间, Now) from 维护管理"
    rs.Open sql, conn, adOpenKeyset, adLockPessimistic
      

  2.   

    rs.Open sql, conn, adOpenKeyset, adLockPessimistic  报错  附近有错误!
      

  3.   

    SQL Server 的语法
    sql = "select 维护时间 from 维护管理 where Datediff(d, 维护时间, GetDate())=0"
      

  4.   

    能在详细点吗??下边怎么输出啊,我把select 维护时间 from 维护管理 where Datediff(d, 维护时间, GetDate())=0 到查询分析器里只返回字段名  可我字段里有2010-4-13 啊
      

  5.   

    Text1 = vbNullString
    while not rs.EOF
        Text1.SelText = rs("维护时间") & vbCrLf
        rs.MoveNext
    wend
      

  6.   

    总之让SQL计算时间间隔和筛选,不要让VB做。