云数据库 GAUSSDB-JDBC配置:连接参数

时间:2024-11-13 14:46:40

连接参数

  • 第三方工具通过JDBC连接 GaussDB 时,JDBC向GaussDB发起连接请求,会默认添加以下配置参数,详见JDBC代码ConnectionFactoryImpl类的实现。
    params = {
                { "user", user },
                { "database", database },
                { "client_encoding", "UTF8" },
                { "DateStyle", "ISO" },
                { "extra_float_digits", "3" },
                { "TimeZone",  createPostgresTimeZone() },
              };

    这些参数可能会导致JDBC客户端的行为与gsql客户端的行为不一致,例如,Date数据显示方式、浮点数精度表示、timezone显示。

    如果实际期望和这些配置不符,建议在java连接设置代码中显式设定这些参数。

    通过JDBC连接数据库时,会设置extra_float_digits=3,gsql中设置为extra_float_digits=0,可能会造成同一条数据在JDBC显示和gsql显示的精度不同。

    M-Compatibility模式数据库下,extra_float_digits的默认值为0。

  • 对于精度敏感的场景,建议使用numeric类型。
  • 通过JDBC连接数据库时,应该保证以下三个时区设置一致:
    • JDBC客户端所在主机的时区。
    • GaussDB集群所在主机的时区。
    • GaussDB集群配置过程中时区。

      时区设置相关的操作,请联系管理员。

support.huaweicloud.com/distributed-devg-v8-gaussdb/gaussdb-12-0051.html