# CCDI 数据库默认排序规则修复实施计划

## 保存路径确认

- 路径：`docs/plans/backend/2026-04-22-ccdi-database-default-collation-backend-implementation.md`
- 归类：后端实施计划

## 目标

- 将 `ccdi` 数据库默认字符集统一为 `utf8mb4`
- 将 `ccdi` 数据库默认排序规则统一为 `utf8mb4_general_ci`

## 背景

- 当前 `ccdi` 数据库默认排序规则为 `utf8mb4_unicode_ci`。
- 仓库数据库规范要求业务库默认排序规则统一为 `utf8mb4_general_ci`，避免新建表或新增字符字段继续继承错误默认值。

## 实施步骤

1. 新增数据库增量脚本，执行 `ALTER DATABASE ccdi CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci`。
2. 使用 `bin/mysql_utf8_exec.sh` 在当前开发库执行脚本。
3. 查询 `information_schema.SCHEMATA` 回查默认字符集与默认排序规则是否生效。
4. 补充实施记录，说明变更范围与验证结果。

## 验证命令

```bash
bin/mysql_utf8_exec.sh sql/migration/2026-04-22-fix-ccdi-database-default-collation.sql
```

```bash
mysql ... -e "SELECT SCHEMA_NAME, DEFAULT_CHARACTER_SET_NAME, DEFAULT_COLLATION_NAME FROM information_schema.SCHEMATA WHERE SCHEMA_NAME='ccdi';"
```

## 完成标准

- `ccdi` 的 `DEFAULT_CHARACTER_SET_NAME` 为 `utf8mb4`
- `ccdi` 的 `DEFAULT_COLLATION_NAME` 为 `utf8mb4_general_ci`
- 本次变更已形成实施记录
