使用vb6从oracle数据库中检索当前日期记录

时间:2011-09-08 06:16:02

标签: sql vb6

我有一个包含作品列表的表。所以我想使用vb6在msflexgrid中显示今天的工作列表。

代码:

strwrlist = "Select * From BIOMED.HelpDesk_Work_Master where TO_DATE(TO_CHAR(WR_DATE,'DD-MON-YYYY HH:MM:SS'),'DD-MON-YYYY HH:MM:SS')='" & dt & "'"  
'dt hold the current date i.e. dt = Format(CDate(rsgetdt.Fields("SYSDATE")), "DD-MMM-YYYY HH:MM:SS")

MsgBox strwrlist
Set rsgetwrlist = Nothing

If rsgetwrlist.State = adStateOpen Then rsgetwrlist.Close

rsgetwrlist.Open strwrlist, Cn.con, adOpenForwardOnly, adLockReadOnly 
Do While Not rsgetwrlist.EOF

    If IsNull(rsgetwrlist("WR_NO")) = False Then

        msflxgrdlow.TextMatrix(r, 0) = rsgetwrlist.Fields("WR_NO")

    End If
        msflxgrdlow.AddItem ""

    rsgetwrlist.MoveNext
    r = r + 1

loop

但是当我从vb运行此查询时,它没有给我一个记录列表 当我在toad(oracle)中运行时,它给出了工作列表。 那么究竟是什么问题?

1 个答案:

答案 0 :(得分:0)

我希望它的一部分是你在日期比较的各种不同格式之间的篡改。 试试吧:

strwrlist = "Select * From BIOMED.HelpDesk_Work_Master where WR_DATE=TIMESTAMP'" & format(dt, "yyyy-mm-dd hh:mm:ss") & "'"

确保WR_DATE和dt都正确键入日期(Oracle中的TIMESTAMP)。

这会保留并进行正确的日期转换和比较。