Datagrip 客户端
Datagrip 客户端
当 jdbc 连接中没有指定数据库名称的时候,是无法直接双击表名来查看表格中的数据的,但是指定之后,就可以了,例如
jdbc:TAOS-RS://xiashuo.xyz:6041/server_node_base
虽然能够双击表名查看表格数据,但是无法直接在表格中新增删除更新数据。这跟连接方式无关,不管是通过原生连接还是 rest 连接都是如此。
时区问题
新版本 DataGrip 以默认时区取世界标准时间。要想时间显示正常,需要将时区变为上海时区,可手动在连接配置里设置参数。
- 右键打开你想要修改的数据库连接的Properties菜单;
- 点击Advanced按钮;
- 在VM options后面写入
-Duser.timezone=Asia/Shanghai
,就可以啦; - 断开数据库连接,重新执行一条 SQL 就可以看到效果了。
设置 JDBC 的连接时区
How to set datagrip to take same timezone as the host database - Stack Overflow
其实正常的数据库连接中都会有这个配置,比如 Mysql 的驱动就有
TDengine 没有这个配置,一开始我还以为是驱动版本过低,导致没有这个配置,后来发现不是的,升级到最新也没有这个配置。
后来,在官方文档:通过Java建立连接 中可以得知,通过 REST 连接 TDengine 时,timezone 参数是无效的,就是说只要你通过 rest 去连接 TDengine,时间戳会一直采用 UTC 时间,靠。你只能拿到手再转一次。如果服务器设置时区是 UTC+8。那么你拿到的时间戳会比实际时间早 8 个小时。
放弃设置时区。