AspenTech IP.21数据时区

时间:2019-03-04 14:37:35

标签: aspen

我正在做一个简单的查询,以通过ODBC和OdbcDataReader检索数据。但是,我无法确定返回数据的时区是什么。我检查了每个文档,但没有任何内容告诉我它是什么(UTC或本地)。我试图在SQL Plus中寻找设置,但也无法在其中找到任何内容。

有人知道或知道文档会怎么说吗?谢谢!

3 个答案:

答案 0 :(得分:1)

在AspenTech IP21 SqlPlus中,每个与服务器时区相关的时间戳。
如果您只对UTC偏移感兴趣(请注意,时区不仅如此),您可以询问服务器其当前时间,然后执行计算:

--something like that :
WRITE GETDBTIME;

此外,如果您有权使用服务器,则可以调用系统命令(检查文档中的语法是否正确)以使用时区名称:

SYSTEM 'tzutil /g';

Screenshot with result

答案 1 :(得分:1)

@Madgui的时区信息正确。但是,我还有其他事情要提到。

在SQLplus中,如果在查询中使用SELECT ISO8601(IP_TREND_TIME),将返回ISO8601 字符串

如果您正在用C#做某件事,并且需要将此作为UTC时间,则必须执行以下操作: DateTime.SpecifyKind(DateTime.Parse(datareader["TREND_TIME"].ToString()).ToUniversalTime(), DateTimeKind.Utc)

DateTim.Parse将作为本地时间返回,只是一个仅供参考,这就是为什么您需要使用.ToUniversalTime()的原因。同样,将其归类为UTC也绝不是一个坏主意。

答案 2 :(得分:1)

在InfoPlus中使用时区的最佳方法是使用功能ISO8601(此处为时间戳)。这样可以避免时区转换错误。