当我使用带Cassandra的DBeaver时,它显示+01:00的偏移量,即使数据以Date或Times格式存储,没有任何时区.这导致一些奇怪的查询,如下所示:
SELECT "Time"
FROM keyspace."Table"
ORDER BY "Time" DESC;
Time
00:00:00
23:00:00
22:00:00
...
01:00:00
Run Code Online (Sandbox Code Playgroud)
那么,如何删除转换或将时区设置为UTC?
Gab*_*abe 57
v22.1.0 在 UI 中添加了此首选项(不再修改.ini文件)。
在窗口 -> 首选项中。转到用户界面并更改客户端时区。重新启动 dbeaver。
Github PR在这里:https://github.com/dbeaver/dbeaver/pull/16467
Edu*_*Edu 16
DBeaver使用安装的计算机中的时间,因此更改时钟并重新启动DBeaver可以正常工作.但是有一种方法只能为DBeaver做这件事.
转到DBeaver快捷方式.可能它在这里:
C:\ProgramData\Microsoft\Windows\Start Menu\Programs\DBeaver
右键单击它,选择"属性",然后在" 目标"框中添加-vmargs -Duser.timezone=UTC到末尾,结果如下所示:
"C:\Program Files\DBeaver\dbeaver.exe" -vmargs -Duser.timezone=UTC
启动DBeaver,时间现在以UTC格式显示.
Arc*_*hon 15
我找到了另一个解决方
dbeaver.ini在DBeaver根目录中设置文件.
打开文件:
-startup
plugins/org.eclipse.equinox.launcher_1.4.0.v20161219-1356.jar
--launcher.library
plugins/org.eclipse.equinox.launcher.win32.win32.x86_64_1.1.551.v20171108-1834
-showsplash
# START: change jre version, not using the one in %JAVA_HOME%
-vm
D:\ArPortable\Java\jdk1.8.0_171\jre\bin\server\jvm.dll
# END
# JVM settings
-vmargs
-XX:+IgnoreUnrecognizedVMOptions
--add-modules=ALL-SYSTEM
-Xms64m
-Xmx1024m
# time zone
-Duser.timezone=UTC
# language
-Duser.language=en
Run Code Online (Sandbox Code Playgroud)
我认为它在某些以前的版本中已修复。
只需转到“设置”->“编辑器”->“数据格式”,然后选择“使用本地日期/时间格式”复选框。

如果你想查看你的时区Selects,你可以去DBeaver Preferences:
如果 DBeaver 正在运行,请退出它。
编辑/usr/share/dbeaver/dbeaver.ini,添加-Duser.timezone=UTC到-vmargs部分。例如:
-vmargs
-XX:+IgnoreUnrecognizedVMOptions
--add-modules=ALL-SYSTEM
-Dosgi.requiredJavaVersion=11
-Xms64m
-Xmx1024m
-Duser.timezone=UTC
Run Code Online (Sandbox Code Playgroud)
打开 DBeaver 并查看 UTC 中的时间戳。
前: 2021-04-19 16:14:23
后: 2021-04-19 16:14:23.056178+00
用 PostgreSQL 测试过。