日期比较

时间:2013-07-25 05:41:09

标签: vb.net

以下是我的计划的部分内容。

Table:SGinfo
-Birthdate
-Age
VB.net form
Label6.text Respectively "Update Age of all Guards in the list"

我的数据库中的问题表中有一条包含此内容的记录---> “2013年7月25日” 如何通过比较系统月份和日期中数据库中记录的月份和日期来更新人员年龄

实施例

"7/15" Compare to database record like this "7/25/2013"

我不知道如何编码。

所以请给出一个简单的代码TY。

3 个答案:

答案 0 :(得分:1)

根据您在注释中的解释,您应该从数据库中读取值,然后使用斜杠“/”字符拆分以获取日期和月份部分的块。然后,您可以使用int.Parse()将这些块转换为数值,并将它们与DateTime.Now.MonthDateTime.Now.Day部分进行比较。

另一种方法是使用类似DateTime.Now.ToString("MM/dd")的内容,并将其直接与您阅读的数据库值进行比较。

答案 1 :(得分:0)

您可以将数据库中的日期设为变量..

Dim dBirth as DateTime = MyTable.Item("BirthDate") '---> get from table

If dBirth.Month = Now().Month AND dBirth.Day = Now().Day Then 

  'some code ...   

End If

答案 2 :(得分:0)

如果他们是同年,那么请尝试,或者根据您的喜好更改date1.Year

    Dim date1, date2 As Date
    Dim lDate1 As String
    date1 = Date.Parse("7/25/2013")
    lDate1 = "7/15" + "/"   + date1.Year
    date2 = DateTime.ParseExact(lDate1 , "dd/MM/yyyy", Null)

     if (DateTime.Compare(date1, date2) > 0) 
      // which means ("date1 > date2")
     if (DateTime.Compare(date1, date2) == 0) 
     //which means ("date1 == date2");
     if (DateTime.Compare(date1, date2) < 0) 
     //which means ("date1 < date2")

Dim tSpan As TimeSpan
tSpan = date2 - date1