更新时间:2024-06-03 GMT+08:00

开发规范

如果用户在APP的开发过程中,使用了连接池机制,那么需要遵循如下规范:
  • 如果在连接中设置了GUC参数,那么在将连接归还连接池之前,必须使用“SET SESSION AUTHORIZATION DEFAULT;RESET ALL;”将连接的状态清空。
  • 如果使用了临时表,那么在将连接归还连接池之前,必须将临时表删除。

否则,连接池里面的连接就是有状态的,会对用户后续使用连接池进行操作的正确性带来影响。

应用程序开发驱动兼容性说明如表1所示。
表1 兼容性说明

驱动

兼容性说明

JDBC、Go、ODBC、libpq、Psycopg、ecpg

驱动前向兼容数据库,若需使用驱动与数据库同步增加的新特性,须升级数据库。

  • behavior_compat_options='proc_outparam_override' 重载参数仅在A兼容模式可用。
  • 原则上,兼容性参数应在创建数据库后就设置,不应在使用过程中来回切换。
  • 涉及使用以下场景的特性需要配合将JDBC驱动升级到503.1.0及以上的配套版本。
    1. 全密态内存解密逃生通道。
    2. 通过JDBC使用record、array、tableof嵌套自定义类型。
    3. 开启s2兼容性参数,设置sessiontimezone的合法性校验。

在多线程环境下使用驱动:

JDBC驱动程序线程不是安全的,无法保证连接上的方法同步。由调用者同步对驱动程序的调用。