我使用将日期时间存储在SQL Server数据库中的应用程序。其中一些是以UTC存储的时间点(例如日志项目日期时间),而另一些则是文字日期/时间(例如,“不论您的时区如何,在7月20日下午4点服用药物X,不管您的时区如何)。问题在于它们都具有日期和时间组件,所以使用datetime2列类型对于两者都有意义。现在我们处于应用程序中日期/时间列是否为UTC时间点的情况经常不清楚的情况或文本日期/时间区分使用UTC和本地日期时间的列
什么是最常见的做法这两个情况之间进行区分,我能想到的这些选项:?
1)结束...... UTC UTC的所有列,而文本日期/时间栏没有特别的结尾。
2)在结束...文字全部文字列,而UTC日期/时间列没有特殊的结局。
3)给出UTC列中的数据类型和DATETIME2字面日期/时间列DATETIMEOFFSET。
你可以改变表,添加新列?例如。一个标志栏“isUTC”,显示你是否是UTC时间或不... – Nebi
我经常见到#1(并自己使用它)。我没有看到#2“在野外”。我不会建议#3 – jleach