【问题标题】:Does SqlDbType.DateTime not store seconds?SqlDbType.DateTime 不存储秒数吗?
【发布时间】:2010-11-06 19:35:01
【问题描述】:
using System.Data;
using System.Data.SqlClient;

我正在使用SqlDbType.DateTimeSqlCommand cmd.Parameters 在数据库中创建记录。

秒数未存储在数据库中。 db 中的字段是 datetime 类型的。

我需要做一些特别的事情来节省时间,还是SqlDbType.DateTime 不需要这样做?

【问题讨论】:

  • 你确定参数值有秒吗?

标签: c# datetime sql-server-2005 ado.net sqlcommand


【解决方案1】:

SqlDbType.DateTime 映射到 SQL 的 DATETIME 数据类型,精确到 3.33 毫秒。听起来您可能会将您的值放入 SQL Server 中的 SMALLDATETIME 字段中,该字段仅精确到分钟。 SqlDbType.DateTime 参数将是与 DATETIMESMALLDATETIME 一起使用的正确选择。

【讨论】:

    【解决方案2】:

    SQL Server DateTime 以毫秒精度存储时间(不完全正确,四舍五入为 .003 .007 等)

    然而,Smalldatetime 存储日期,使得秒数始终为 :00。您可能使用过 smalldatetime。

    http://msdn.microsoft.com/en-us/library/ms182418.aspx

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-01-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-06-23
      相关资源
      最近更新 更多