Navicat冻结列功能需先选中左侧某一列头再右键,选择“冻结已选择的列”;仅支持连续冻结左侧列,取消冻结须右键已冻结列头并点击“取消冻结列”。

Navicat 冻结列功能在哪找
Navicat 本身没有“冻结列”这个独立菜单项,它把该能力藏在结果集表格的右键上下文里。打开查询或表数据视图后,必须先选中一列(点击列头),再右键——否则“冻结列”选项是灰色不可用的。
- 只有选中左侧某一列头时,“冻结列”才可点击;选中多列或整行无效
- 冻结后,被冻列会始终固定在最左侧,滚动时不会移出视野
- 当前仅支持冻结连续的左侧列(比如冻结第1列、前2列),不能跳着冻第3列
冻结列后编辑数据为什么卡顿或错位
这是 Navicat 的一个已知表现:冻结列 + 启用“自动调整列宽”时,编辑单元格后表格可能重绘异常,导致光标跳位、输入延迟甚至列内容错行。
- 关闭
工具 → 选项 → 数据查看器 → 自动调整列宽能显著缓解 - 如果列内容含换行符(
\n),冻结列后渲染更易出问题,建议临时用REPLACE(col, '\n', ' ')查看 - 冻结列数越多,内存占用越高;超过5列时,老版本(如 Navicat 15.0.28 以前)可能出现响应滞后
如何解除冻结或调整冻结范围
冻结不是永久设置,每次关闭结果集窗口就会重置。但若想动态调整:
- 右键任意已冻结列的列头 → 点击
取消冻结列,所有冻结立即释放 - 想扩大冻结范围?先取消冻结,再选中新边界列(比如原来冻第1列,现在想冻前3列,就点第3列头再右键冻结)
- 注意:
取消冻结列选项只出现在已冻结列的列头上;未冻结列的右键菜单里没有这项
替代方案:当冻结列不生效时怎么办
某些场景下(如使用 PostgreSQL 驱动连接、或开启了“只读模式”),右键菜单压根不显示冻结选项。
- 先确认当前连接是否处于可编辑状态:
编辑 → 编辑表能点开即说明权限正常 - 换驱动尝试:在连接属性中将
高级 → 使用旧版 PostgreSQL 驱动打钩,部分版本兼容性更好 - 实在不行,用
SELECT col1, col2, ..., other_cols FROM table显式控制字段顺序和数量,比依赖冻结更可控
Navicat 的冻结列本质是前端 UI 层的视觉固定,不改变 SQL 或数据逻辑。真正需要频繁对照的字段,优先考虑在 SELECT 中前置关键列,比依赖 UI 功能更稳定。


















