【问题标题】:vb.net before date is less than datetime now日期之前的vb.net现在小于日期时间
【发布时间】:2012-06-12 17:36:37
【问题描述】:

上次保存在数据库中的日期是: 2012 年 6 月 13 日下午 12:27:30

在我的 DateTime Now 中是: 2012 年 6 月 13 日上午 01:27:57

但是,当我执行这个函数时,它总是说: "日期已手动修改,请设置为有效日期时间"

但是,DateTime Now 不小于我数据库中的日期。怎么了?

这是代码,请更正,

Private lastdate As DateTime
Private Sub GetDBdate()
...
    Dim ss As String
    Dim sc As New SQLiteCommand
    ss = "select dtime from dincome order by dtime desc limit 1"
    sc = New SQLiteCommand(ss, mycon)
    lastdate = CDate(sc.ExecuteScalar)
End Sub



    Private Function CheckValidDate() As Boolean
    Dim dtnow As DateTime = DateTime.Now
    If dtnow < lastdate Then
        Return False
    End If
    Return True
    End Function




    Private Sub Button_Click
    If Not CheckValidDate() Then
    label1.Text = "Date has been manually modified, Please Set to Valid DateTime"
        Exit Sub
    End If
    ...
    ...
    Exit Sub

【问题讨论】:

  • 但是 01:27 AM(现在)小于 12:27 PM(LastDate),因此无效。
  • @Nico Schertler,是的,你说得对,我没看到,但是我的数据库的日期是 2012 年 6 月 13 日,而日期是 2012 年 6 月 12 日下午,我会像布莱恩比查姆说的那样看。谢谢

标签: vb.net datetime date


【解决方案1】:

您的休息时间大约是一小时。你检查过你的时区设置吗?这在过去引起了我的问题。

【讨论】:

  • 实际上我的数据库日期时间是这样保存的: 2012-06-13 12:27:30 ,你注意到没有 AM/PM 标签,所以当我将它与时间进行比较时,现在是 AM ,然后它说现在小于,因为在数据库中它被读取为 PM,但在保存时是 AM,并且在数据库中没有标记为 AM 或 PM。我认为我的日期时间程序保存有问题。谢谢
【解决方案2】:

我认为这是一个 24 小时的问题,昨天我从

中删除了 tt

Dim dt As DateTime = DateTime.Now.ToString("yyyy-MM-dd hh:mm:ss")

应该是:

Dim dt As DateTime = DateTime.Now.ToString("yyyy-MM-dd hh:mm:ss tt")

谢谢大家

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-11-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-12-21
    • 2012-08-21
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多