在sql server中存储视频持续时间

时间:2008-10-31 18:11:40

标签: sql sql-server database sql-server-2005

用于在sql server中存储视频的持续时间信息的最合适的类型是什么?

4 个答案:

答案 0 :(得分:2)

这取决于您需要的粒度以及是否对最长时间有任何限制。例如,你需要知道毫秒的持续时间还是足够的1秒?另一件需要考虑的事情是您(或可以)存储多少数据。

对于SQL Server 2005,您有以下约束:

tinyint

  • min = 0
  • max = 255
  • 大小= 1个字节

smallint

  • min = -2 ^ 15(-32,768)
  • max = 2 ^ 15 - 1(32,767)
  • 大小= 2个字节

int

  • min = -2 ^ 31(-2,147,483,648)
  • max = 2 ^ 31 - 1(2,147,483,647)
  • 大小= 4字节

bigint

  • min = -2 ^ 63 (-9,223,372,036,854,775,808)
  • 最大= 2 ^ 63 - 1 (9,223,372,036,854,775,807)
  • 大小= 8字节

答案 1 :(得分:2)

several options,包括使用内置DateTime或Time数据类型,偏离特定的固定零(这将允许您使用内置日期/时间函数来获取小时,分钟和秒,等

如果您使用的是SQL Server 2005之前的版本,则可以将其与user-defined data type technique(如果您的跨度少于24小时)结合使用,以限制日期部分保证不会漂移。

答案 2 :(得分:2)

只需将其存储为DateTime - 您可以内置排序,格式化和计算。

答案 3 :(得分:1)

我会将它存储为代表秒数的INT,但我想这完全取决于您需要对数据库中的信息做什么(您不希望将其转换为HH:MM:SS或者你的数据库中的其他东西)