尽管服务器连接相同,但 PostgreSQL 查询在 DbEaver 和 C# (Dapper/ADO.NET) 中返回不同的结果

问题描述 投票:0回答:1

目前是 2024 年 4 月 23 日凌晨 1:15。我的时区是 GMT +7。我有一个 C# 应用程序和一个 DbEaver 应用程序,它们都连接到同一台 PostgreSQL 服务器。我执行一个非常简单的查询,如下所示:

select current_date

DbEaver 结果:'2024-04-23'

C# 结果(Dapper 和 ADO.NET):'2024-04-22'。

我已经发现了这个问题,因为我的条件

datetime > current_date
的查询结果不正确。

请向我解释原因以及如何解决该问题。我非常感谢你的帮助

c# postgresql dapper
1个回答
0
投票

两个会话中

timezone
参数的值必须不同,以便数据类型
timestamp with time zone
的值呈现不同。

使用SQL语句

SET
将参数调整为适合您会话的时区:

SET timezone = 'Europe/Vienna';
© www.soinside.com 2019 - 2024. All rights reserved.