【问题标题】:Changing local clock affects remote SQL Server database functionality更改本地时钟会影响远程 SQL Server 数据库功能
【发布时间】:2010-08-14 00:26:07
【问题描述】:

我遇到了一些 SQL Server 2008 查询的问题,我想我把它归结为服务器和本地应用程序之间的差异。这是我的场景的基本描述:

我正在使用在远程数据库上执行插入语句的本地应用程序。一切正常,直到我更改运行应用程序的本地计算机上的时钟(比如说几天后),因为数据并没有真正插入远程数据库(或者至少,我看不到它)。

我的问题是,SQL Server 功能在多大程度上受此类更改的影响?在我的示例中,由于完整性问题,插入没有完成吗?

【问题讨论】:

  • 如果 INSERT 语句包括来自客户端应用程序的日期/时间,那么对工作站日期时间设置的更改将在记录中显而易见。这就是为什么您不编写应用程序来执行此操作的原因。

标签: sql-server database sql-server-2005 sql-server-2008


【解决方案1】:

肯定会受到时差影响的一件事是 NTLM/Kerberos 握手以及 SSL,所有这些都可以容忍参与者之间通常存在 30 分钟的时间漂移​​。如果您提前 更改时钟,在大多数情况下,您将无法成功打开与 SQL Server 的连接。我必须假设您的应用程序也可能默默地吞下连接错误。

【讨论】:

    【解决方案2】:

    听起来本地应用程序受到了影响。它不是 SQL Server。 SQL Server 肯定只会使用远程机器上的时间。

    【讨论】:

    • 它没有为每条处理的记录隐藏某种时间戳吗?
    • 我不知道我是否会将它们称为隐藏,但它确实知道交易何时发生。但是,如果它们是来自客户端的时间戳,它们将毫无用处,因为无法保证它们是一致的。时间戳在服务器上生成。
    • 而且它不依赖日期时间,它使用序列号。
    猜你喜欢
    • 2023-04-08
    • 2023-03-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-08-09
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多