sql - 数据库中的日期格式在 vb.net 中获取错误的日期

标签 sql .net vb.net parsing date

我正在从 SQL 数据库获取数据,现在我尝试将数据转换为 VB.NET 中的正确日期变量,但我没有获得正确的格式。

来自数据库的数据:

28-FEB-14 01:00:00:0
28-FEB-14 13:00:00:0

我尝试转换时得到的日期:

2028-02-14
2028-02-14 12:00:00

进行转换的代码:

    Dim theDate As DateTime
    Dim try1 As Date

    For i As Integer = 0 To batchCount - 1
        If Date.TryParse(dv(i)(0), theDate) = True Then
            try1 = theDate.ToUniversalTime()
        End If

非常感谢我能得到的所有帮助。

最佳答案

首先,数据库中的日期值应该是日期类型,因此当您读入它们时,您将它们读入日期类型变量。

如果您想格式化该日期,可以使用 ToString 重载

Dim theDate as DateTime = dr.item("date")
Debug.Writeline(theDate.ToString("yyyy-MM-dd")

其次,如果日期作为字符串字段存储在数据库中(您不应该这样做,但您可能无法控制它),它应该采用特定格式,因此您可以使用 ParseExact 将其转换为日期:

Dim dateString As String
dateString = DateTime.ParseExact(dr.item("Date"), "dd-MMM-yy HH:mm:ss.f", CultureInfo.CurrentCulture)

关于sql - 数据库中的日期格式在 vb.net 中获取错误的日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22245114/

相关文章:

mysql - 表中不同记录(行)的数量

mysql - 在sql更新中连接所有列值的字符串

sql - 如何从 SQL SSIS 中的日期时间字符串中去除日期?

c# - 如何正确地将我的 ContextMenu 命令绑定(bind)到 RelayCommand?

vb.net - 创建时授予文件夹完全访问权限

vb.net - 实例化和初始化是否仅在与按钮单击相关时才起作用?

sql - 使用函数改进 SQL 查询

c# - 命名空间 'Objects' 中不存在类型或命名空间名称 'System.Data'

c# - 转换为 PDF 时出错 : The document has no pages at document. close()

c# - 如何在 TableLayoutPanel 中对齐文本框和标签?