.net - 如何比较两个日期格式以保存到数据库

标签 .net vb.net datetime

我想比较两个 日期格式 并在两个 时返回“false”格式不等于 .

例如,我得到两个日期,24/10/2012 (DD/MM/YYYY) 和 2016/11/05 (YYYY/MM/DD)...在这种情况下,某些函数应该返回 false,因为日期格式 不等于 .

我想要一个函数,当要比较的第二种格式不等于 SQL 格式 (YYYY-MM-DD) 时,该函数返回 false。

最佳答案

您在问一个(或两个)不需要回答的问题。

日期没有格式 格式是日期向人类显示的方式。日期只是一个非常大的数字,例如 636094492018399433L .它没有格式。
I want a function thats returns false when the second format to compare not equal the SQL format (YYYY-MM-DD)
您真的不必担心使用 NET DB 提供程序(例如 OleDB、SQLite、SQL Server、MySQL)的 db 格式。他们都知道如何将日期数据正确存储到日期列 - 这是他们的工作。如果您的列是字符串,则 不要那样做 .如果您希望日期表现得像日期,请将它们存储为日期。

对于从键盘通过 Shell 界面输入数据或从文本/csv 文件导入数据的情况,数据库文档会费心解释日期格式。使用 NET DB 提供程序时,数据格式是一个实现细节。

Using dbCon As New MySQLConnection(mySQLConnStr)
    Using cmd As New MySqlCommand(SQL, dbCon)
        dbCon.Open()
        cmd.Parameters.Add("@p1", MySqlDbType.DateTime).Value = fromDate
        cmd.Parameters.Add("@p2", MySqlDbType.DateTime).Value = toDate

        cmd.ExecuteQuery
    End Using
End Using
  • 指定 DbTypeDateTime
  • 传递它日期数据。

  • 为了只存储日期,大多数数据库都有一个单独的 DbType.Date ,但通常您只需要通过 .Date部分:
    cmd.Parameters.Add("@p2", MySqlDbType.Date).Value = toDate.Date
    

    NET 数据库提供者都知道事情,比如如何获取 NET 日期并将其保存到它们构建的数据库中,并以它可以解析/读回的格式执行此操作。

    关于.net - 如何比较两个日期格式以保存到数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39492386/

    相关文章:

    c# - 有什么好的例子或框架可以教我n层开发吗?

    mysql - 如何将ListBox项目分别插入到MySQL的不同行?

    python - 使用日期时间在python中获取UTC时间戳

    c# - 从 DirectoryInfo.GetFiles 返回的 FileInfo 没有指向文件?

    c# - 通过 C# .net 窗口应用程序打印账单

    c# - .NET 模拟 Ctrl+Alt+Del 发送键

    javascript - 服务器端函数调用客户端 Javascript 函数获取结果

    python - 制作备份文件+附加日期时间+如果文件存在则移动文件。 PYTHON

    c# - 自定义日期时间格式字符串未按预期工作

    sql - LINQ 订单。它总是返回相同的有序列表吗?