
# 开发规范
如果用户在APP的开发过程中，使用了连接池机制，那么需要遵循如下规范：
- 如果在连接中设置了GUC参数，那么在将连接归还连接池之前，必须使用"SET SESSION AUTHORIZATION DEFAULT;RESET ALL;"将连接的状态清空。
- 如果使用了临时表，那么在将连接归还连接池之前，必须将临时表删除。
 
否则，连接池里面的连接就是有状态的，会对用户后续使用连接池进行操作的正确性带来影响。
应用程序开发驱动兼容性说明如[表1]所示：
 表1兼容性说明 
| 驱动                      | 兼容性说明                                |
|:---|:---|
| JDBC、Go                 | 驱动前向兼容数据库，若需使用驱动与数据库同步增加的新特性，须升级数据库。 |
| ODBC、libpq、Psycopg、ecpg | 驱动须与数据库版本配套。                         |
   
![](https://support.huaweicloud.com/centralized-devg-v3-gaussdb/public_sys-resources/notice_3.0-zh-cn.png)
- behavior_compat_options='proc_outparam_override' 重载参数仅在A兼容模式可用。

- 原则上，兼容性参数应在创建数据库后就设置，不应在使用过程中来回切换。
- 涉及使用以下场景的特性需要配合将JDBC驱动升级到503.1及以上的配套版本：
  - 开启s2兼容性参数，设置sessiontimezone的合法性校验。
   
 
在多线程环境下使用驱动：
JDBC驱动程序是非线程安全的，无法保证连接上的方法同步。由调用者来同步对驱动程序的调用。
