# 2026-05-15 开发日志

## 1. 调整 `DatabaseHealthCheckService` 中函数创建条件

- 动作：修改 `DatabaseHealthCheckService` 的健康检查逻辑，只有在 `com.kingbase8.Driver` 且 `SHOW database_mode` 返回 `oracle` 时，才执行 `find_in_set` 函数检查与创建。
- 原因：该函数创建逻辑仅适用于 Kingbase 的 Oracle 兼容模式，避免在其他模式下误执行建函数语句。
- 结果：函数创建条件更精准，减少非目标模式下的数据库操作。

## 2. 补充 `find_in_set` 函数存在性检查

- 动作：在创建函数前先查询 `pg_proc`，若已存在则跳过；不存在时再执行 `CREATE OR REPLACE FUNCTION find_in_set(...)`。
- 原因：避免重复创建数据库函数，降低启动期重复执行 DDL 的风险。
- 结果：启动时对数据库函数的处理更加安全、幂等。
