feat(web3): Oracle 连接支持 + schemas 列表修复 + start.bat 自动重启
包含三块改动:
1. Oracle Instant Client 路径字段端到端打通
- 后端 ConnectRequest / TaskOut / DBConfig 已有 oracle_client_dir 字段但前端
表单缺一个输入框,用户拿不到这个值,测试连接永远走 thin 模式
- TaskModal 表单加 Oracle Client 输入框(仅 dbType=Oracle 时显示)+ 回填/保存
- connections.js buildPayload / connectionPresets.js presetToForm 串联字段
- routers/tasks.py TaskOut 加 oracle_client_dir 给编辑场景用
- routers/queries.py DBConfig 多传 oracle_client_dir(关键,否则查询时
还是 thin 模式)
2. Oracle schemas 列表 + database/schema 拆分
- Oracle list_schemas 改用 ALL_TABLES.DISTINCT OWNER(之前用 all_users
会列所有用户,大部分没表,选了之后 list_tables 找不到表)
- list_tables / list_columns 加独立 schema 参数:MySQL/达梦 留空走默认
(fallback 到 database),Oracle 用前端传的 OWNER。
之前错位:database=service_name 时被当成 OWNER 查 ALL_TABLES → 0 行
- ConnectRequest 加 schema: Optional[str] 字段
- 前端 buildPayload 加 schema: form.schema || form.db
3. start.bat 启动后端前自动 kill 占用 :8767 的老进程
- 后端没 --reload,改代码后必须手动 taskkill 老进程,否则新进程 bind 失败
静默退出,start.bat 用户以为改了没生效
- 现在双击 start.bat 就行:netstat 找 PID → taskkill → 等端口释放 → 起新进程
12 条后端用例全过。
Showing
Please register or sign in to comment