我想在 SQLite 数据库中创建一个字段(使用 C#)来存储所用时间(持续时间)字段。该值将采用 hr:min:sec
格式,如 '10:10:00'
表示 10 小时 10 分 00 秒。我应该为此使用哪种数据类型?我知道 DateTime
不够用,因为它用于存储日期时间。
最佳答案
在 C# 中使用 TimeSpan
。这意味着表示耗时,这就是您所描述的。
在 SQLite 中,您应该存储一个 INTEGER
类型,以便您的数据可以排序。您只需决定所需的粒度。
例如,如果您关心可能的绝对最佳精度,则可以存储 TimeSpan.Ticks
。为此,您需要一个 8 字节的 INTEGER
。加载时,您可以使用 TimeSpan.FromTicks
或构造函数 new TimeSpan(ticks)
。
更有可能的是,您希望存储整数秒,您可以从 TimeSpan.TotalSeconds
中获取。您可能为此使用 4 个字节的 INTEGER
。加载时,您可以使用 TimeSpan.FromSeconds
从整数重新创建时间跨度。
关于c# - 在 SQLIte 中使用哪种数据类型来存储 TimeTaken 字段?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18307632/