Commit Graph
61 Commits
Author SHA1 Message Date
zipg 1566bb8a9f feat(plugins): analyze plugin data in the built-in AI panel 2026-09-22 15:04:33 +08:00
zipg 70c6ce4c28 perf(table-info): mark DDL search hits on the rendered DOM 2026-09-22 14:18:54 +08:00
zipg 98101d20af feat(grid): add autofit-all-columns action to the filter panel 2026-09-22 14:17:18 +08:00
zipg 80f8ed81fb fix(sqlserver): keep IF/ELSE control-flow batches in one range 2026-09-22 13:16:56 +08:00
zipg 639abb3993 feat(oracle): apply DDL storage stripping to Oracle 2026-09-22 11:55:05 +08:00
zipg 770463e39a fix(mysql): disable session stats cache for fresh row counts 2026-09-22 11:53:27 +08:00
zipg e639ee51d6 fix(mysql): fall back to utf8 for servers without utf8mb4 2026-09-22 11:50:14 +08:00
zipg 8b3d7fc9e6 fix(mysql): switch tab database label after USE statements 2026-09-22 11:48:36 +08:00
zipg dc6fee7e93 fix(mysql): optionally keep explicit transactions in autocommit tabs 2026-09-22 11:11:06 +08:00
zipg 74f1704d09 fix(sql): preserve Oracle-style routine bodies for postgres-family 2026-09-22 11:09:45 +08:00
zipg cc966142ac fix(theme): keep inverted text opaque over background images 2026-09-22 10:59:40 +08:00
zipg 8858a731aa fix(tabs): assign duplicate-tab numbers once without renumbering on close 2026-09-22 10:58:15 +08:00
zipg 0c156076ea improve(tabs): suffix duplicate tab titles with numbers 2026-09-22 01:53:33 +08:00
zipg 3156f36fac fix(structure): add action names to column icon tooltips 2026-09-22 01:10:59 +08:00
zipg 529267cded fix(export): name query result exports after result tab 2026-09-22 01:09:48 +08:00
zipg 0f8ad280c1 fix(grid): keep JSON format reachable after compacting 2026-09-21 16:57:48 +08:00
zipg 916b62287a fix(diff): scroll data compare results in a plain element 2026-09-21 16:33:47 +08:00
zipg e74257b6e0 feat(structure): add view data entry to the DDL structure tab 2026-09-21 13:37:21 +08:00
zipg 4dd62b78ec feat(mongodb): show and sort collection sizes in objects view 2026-09-21 13:36:44 +08:00
zipg 0668bdc406 feat(editor): locate Oracle errors by message position with cursor anchor 2026-09-21 12:59:35 +08:00
zipg f19d842b8f fix(structure): keep Oracle case-sensitive identifiers quoted when quoting off 2026-09-21 12:52:44 +08:00
zipg f8ee34f937 feat(editor): add goto line input with Ctrl+G and Cmd-Alt-G 2026-09-21 12:50:40 +08:00
zipg 420cb80e65 fix(grid): qualify generated save and copy SQL with database name 2026-09-21 11:51:34 +08:00
zipg 90ad995803 fix(jdbc): send rowOffset for generic JDBC table pagination 2026-09-21 11:38:18 +08:00
zipg 79d6ab64e9 fix(sqlserver): diagnose DECLARE without data type in routine bodies 2026-09-21 11:38:04 +08:00
zipg 566bfc3039 fix(grid): stop stealing focus after cell edit commit on blur 2026-09-21 11:37:38 +08:00
zipg e364e4a70f fix(objects): collapse toolbar controls when object view is narrow 2026-09-21 11:37:24 +08:00
zipg 221683950d fix(sql): add missing T-SQL keywords to sqlserver completion 2026-09-21 01:33:57 +08:00
zipg 29470b8b3f fix(transfer): preserve NUMBER(p,s) precision for oracle-family targets 2026-09-21 01:07:08 +08:00
zipg 5a74925d07 fix(oracle): extract trigger body from driver source when cloning 2026-09-21 00:28:35 +08:00
zipg d715b16ba5 fix(sqlserver): wrap identity inserts with SET IDENTITY_INSERT 2026-09-20 23:49:28 +08:00
zipg ce2d270132 fix(redis): tolerate missing PING and INFO privileges 2026-09-20 19:48:53 +08:00
zipg 786fea8418 fix(sidebar): restore loaded pages after clearing search 2026-09-20 19:36:31 +08:00
zipg 04c55ad067 feat(mysql): terminate sessions from the process list 2026-09-20 19:35:57 +08:00
zipg 6aab94b3a8 feat(diagram): show table and column comments on cards 2026-09-20 19:12:51 +08:00
zipg 1ef865008a feat(structure): show comments and defaults in copy-fields dialog 2026-09-20 18:25:31 +08:00
zipg ec7bc617c4 feat(admin): shift-select multiple sessions in process list 2026-09-20 16:49:57 +08:00
zipg 08cb9287de feat(structure): add copy-all-column-names to table designer 2026-09-20 16:49:18 +08:00
zipg 88ba58a79c fix(sql-analysis): tolerate Oracle admin DDL in diagnostics 2026-09-20 11:06:40 +08:00
zipg efe21c2731 fix(transfer): enable vastbase data transfer 2026-09-20 01:48:42 +08:00
zipg 3cb1faf1c6 fix(editor): skip INSERT hints duplicating projection aliases 2026-09-20 00:51:06 +08:00
zipg f9b984da68 fix(diagram): align multi-schema export positions with canvas 2026-09-20 00:50:14 +08:00
zipgandzipg c71c35624b fix(structure): 表结构编辑器补充可拖拽的纵向滚动条 (#9585)
编辑表结构的「字段 / 索引」页签之前只有自绘的横向滚动条,纵向只能靠滚轮,
字段较多时既没有“还有更多内容”的视觉提示,也无法拖拽定位。

- 复用 useVerticalOverlayScrollbar 组合式函数,为当前激活的表格页签
  (字段 / 索引)渲染与横向滚动条同款的覆盖式纵向滚动条;
- 页签面板改为三行两列的 grid:工具栏、滚动区、横向条在第一列,
  纵向条独占第二列,仅在有溢出且处于表格页签时出现;
- 隐藏该滚动区残留的原生纵向滚动条,避免与自绘条重叠;
- 补充单测:纵向滚动条在有溢出时出现、拖拽可同步 scrollTop,
  以及非表格页签(DDL)下不渲染。

Fixes #9408

Co-authored-by: zipg <4047349+zipg@users.noreply.github.com>
2026-09-19 15:23:27 +08:00
zipgandzipg 687b988b7d fix(mysql): 显式配置的 group_concat_max_len 稳定生效并补充连接表单提示 (#9582)
DBX 连接 MySQL 时会执行 SET SESSION group_concat_max_len = 1048576,
避免 GROUP_CONCAT 结果被静默截断(#2775)。但当用户在 URL 参数里用
Connector/J 语法 sessionVariables=group_concat_max_len=... 显式指定值时,
内置语句与用户语句的执行先后取决于底层驱动,覆盖行为不具备确定性;
连接表单也没有任何提示,导致按服务端配置排查问题时被误导(#9412)。

- 新增显式覆盖检测:解析 sessionVariables 中的赋值目标,命中
  group_concat_max_len(含大小写、@ 前缀、session 限定)时不再下发内置的
  SET SESSION,用户/服务端的值始终生效;@user 变量与 @@global. 赋值不影响
  默认行为。
- 连接表单 URL 参数下方为 MySQL 增加提示,说明可用的覆盖写法
  (sessionVariables=group_concat_max_len=@@global.group_concat_max_len 即
  完全跟随服务端配置),并补齐 10 个语言包文案。

Co-authored-by: zipg <4047349+zipg@users.noreply.github.com>
2026-09-19 15:23:16 +08:00
zipgandzipg 74c275b2ce fix(sqlserver): 表结构支持查看约束(主键/唯一/外键/检查/默认值) (#9581)
SQL Server 连接的「编辑表结构」面板里只有 DDL/字段/索引/外键/触发器,
没有「约束」页签;用户无法查看某张表的约束。

list_constraints 在 SQL Server 驱动中完全缺失:驱动侧没有对应实现,
dbx-core 的 list_constraints_core 没有 SQL Server 分支,直接落到默认的
空数组;前端 tableMetadataCapabilities 也没有声明 sqlserver 支持,
因此即使是空页签也不会渲染。

- dbx-drivers 新增 list_constraints,用一条 UNION ALL 查询汇总
  sys.key_constraints(PK/UNIQUE)、sys.foreign_keys(含引用库表列、
  ON UPDATE/DELETE 动作、is_not_trusted)、sys.check_constraints、
  sys.default_constraints;列名用 FOR XML PATH('') 聚合,兼容 SQL Server
  2008(无 STRING_AGG)
- list_constraints_core 增加 SQL Server 分支与链接服务器早退
- tableMetadataCapabilities 为 sqlserver 打开 constraints,前端显示「约束」页签
- 新增单测覆盖 SQL 形态与列名拆包,并补充前端能力断言

Co-authored-by: zipg <4047349+zipg@users.noreply.github.com>
2026-09-19 13:31:45 +08:00
zipgandzipg ed1881e323 fix(editor): 右键粘贴含 CRLF 的剪贴板文本不再报选区越界 (#9576)
SQL 编辑器里选中一百多行后,右键“粘贴”从 Excel 复制的表格数据会报
“读取剪贴板失败:Selection points outside of document”,文档内容不变;
先删除文本再粘贴则正常。

右键粘贴按剪贴板原文长度计算光标位置,而 CodeMirror 会把插入文本中的
\r\n、\r 归一化为 \n,实际写入的文本比原文短,光标落到文档末尾之后,
dispatch 抛出 RangeError: Selection points outside of document。

- 新增 queryEditorClipboardPasteChange:先归一行尾再按实际插入长度计算光标
- QueryEditor 右键粘贴改用它,选区长度不再影响粘贴是否成功

Co-authored-by: zipg <4047349+zipg@users.noreply.github.com>
2026-09-19 13:31:40 +08:00
zipg ffb915061f feat(editor): select all and deselect all in completion column picker 2026-09-19 10:55:21 +08:00
zipg 257e023120 fix(completion): stop appending space before statement terminators 2026-09-19 10:55:06 +08:00
zipg 85a10be4c9 fix(mongodb): keep local value filters across page size changes 2026-09-19 09:46:36 +08:00
zipg a03d19a76c fix(redis): localize set editor row and column labels 2026-09-19 09:24:05 +08:00