【发布时间】:2015-07-22 20:10:20
【问题描述】:
我有一个存储事件的数据表。事件以当地时间保存。我正在开发一个表单,用户在其中输入过去的日期和时间。在多次填写表格后,我需要获取这些日期和时间,并找出在这些时间发生的事件。
问题在于用户输入的是他们的当地时间,而不是我的。我可以添加偏移量或时区选择。但后来我意识到,日光节约时间会让事情变得不起作用。
我无法更改我的数据表日期和时间值。我可以在哪里将他们的日期和时间转换为我的,同时考虑夏令时?
谢谢
【问题讨论】:
-
您是否考虑过以 UTC 格式存储日期。意思是,让用户以 UTC 格式为您提供日期并将其存储在 UTC(在 sqlserver 中)并基于 UTC 进行搜索。
-
可能会更容易询问用户他们的本地时间和时区,然后在后端转换为 UTC。取决于用户群的复杂程度。但我确实同意 UTC 是要走的路。
标签: c# sql-server vb.net tsql