英国夏令时(BST)的SQL Server Active Directory导入问题

时间:2008-10-21 09:10:54

标签: sql-server datetime active-directory

我正在使用SQL Server ADSI从Active Directory导入数据,并使用whenChanged字段来控制是否需要重新导入组的成员。

问题是格林威治标准时间正在退回日期,我现在在BST。

所以,今天上午9点50分成员更改,我说的AD工具是9:50,但ADSI查询返回8:50。这意味着如果一小时内发生两次变化,我将错过一次。

我使用的查询如下所示:

Select distinguishedName, whenChanged 
From OpenQuery(ADSI, '<LDAP://OU=Groups,DC=mydomain,DC=adr>;(objectCategory=Group);distingusihedName, whenChanged')

我可以使用另一个可以给我准确日期的字段吗?有没有更好的方法来做我在SQL Server中尝试做的事情?

1 个答案:

答案 0 :(得分:1)

为什么要首先存储当地时间? whenChanged属性已经为您提供GMT,在该时区内任何时间都不会“丢失”。

可以转换为当地时间用于显示目的,但我肯定会将GMT / UTC存储在数据库中。

相关问题