Tsql 为什么在这个实例中使用时间戳而不是日期时间?
在我读过的许多关于SQL时间戳使用的例子中,一个典型的例子是添加了一个时间戳列,以防止出现一种竞争情况,即用户更改的数据由于另一个用户“先进入”而失去了完整性 更具体地说,在对行发出更新之前,业务逻辑将交叉检查他们认为正在更改的时间戳,以便不会与行版本控制混淆 问题Tsql 为什么在这个实例中使用时间戳而不是日期时间?,tsql,datetime,sql-server-2014,Tsql,Datetime,Sql Server 2014,在我读过的许多关于SQL时间戳使用的例子中,一个典型的例子是添加了一个时间戳列,以防止出现一种竞争情况,即用户更改的数据由于另一个用户“先进入”而失去了完整性 更具体地说,在对行发出更新之前,业务逻辑将交叉检查他们认为正在更改的时间戳,以便不会与行版本控制混淆 问题 为什么DATETIME不足以完成这项任务?事实上,按照这种逻辑,为什么任何唯一的数据类型都不合适呢?NEWID每次发布更新时,例如?似乎我错过了时间戳的基本功能,它会自动更新 因此,在一行上调用UPDATE将自动增加它的TIMEST
为什么DATETIME不足以完成这项任务?事实上,按照这种逻辑,为什么任何唯一的数据类型都不合适呢?NEWID每次发布更新时,例如?似乎我错过了时间戳的基本功能,它会自动更新 因此,在一行上调用UPDATE将自动增加它的TIMESTAMP列,而无需我手动设置它
我将把这个答案留在这里,以防有人对我可能遗漏的其他内容发表评论。在mySQL中,时间戳是一种物理上比datetime更小的数据类型。此外,时间戳是通用的,忽略所有时区。对于国际产品,这一点很重要
不建议使用ID,因为它们通常在插入/更新时生成 根据我的经验,一个短整数就足够了。@Pointy-我看不出有任何理由它不会,这就是我的困惑所在。这是一个广泛提供的示例,我不确定我缺少了什么。你说的是哪种DBMS?@a_horse_with_no_name-SQL Server 2014。SQL Server中的时间戳不存储日期和时间。