mirror of
https://github.com/Syngnat/GoNavi.git
synced 2026-08-14 10:34:02 +08:00
## 背景 Issue #847 希望外部 SQL 文件能够单独指定执行连接和数据库,并在后续打开时自动恢复该上下文,减少在数据库客户端之间复制 SQL 的操作成本。 ## 变更点 - 在外部 SQL 文件右键菜单增加“指定执行数据库”,支持选择连接、数据库及清除单独绑定 - 将文件绑定持久化到外部 SQL 目录配置,并在树节点、最近文件、大文件执行、顶部文件入口和 AI 文件检查中统一解析 - 文件或目录重命名时同步迁移绑定,删除时清理失效绑定 - 最近 SQL 文件按物理路径去重,避免切换指定数据库后重复展示同一文件 - 补充六语言文案及绑定优先级、持久化、生命周期和菜单回归测试 ## 影响范围 - 仅影响外部 SQL 文件的上下文选择和最近文件展示 - 未绑定文件仍使用原有目录默认上下文;清除单独绑定后恢复原行为 - 不涉及后端接口、数据库迁移、依赖或构建链路变更 ## 验证 - `npx vitest run src/components/TabManager.recent.test.ts src/components/ai/aiExternalSqlFileInsights.test.ts src/components/sidebar/sidebarLegacyNodeMenu.external-sql.test.tsx src/store.test.ts src/utils/externalSqlTree.test.ts`:128 项通过 - `npx tsc --noEmit`:通过 - `npm run build`:通过 - 六份 `shared/i18n/*.json`:解析成功且键集合一致 - `git diff --cached --check`:通过 Closes #847