Sublime默认SQL高亮极弱,必须安装插件;推荐SQLTools(支持方言区分、格式化与补全)、Better SQL Syntax(专治双引号/美元符等细节)或SublimeSQL(适合直连数据库执行),且务必确认文件右下角语法路径正确生效。

Sublime 默认的 SQL 高亮极弱,不装插件基本等于裸奔——关键字不全、新语法(如 WITH RECURSIVE、JSON_EXTRACT、ILIKE)直接标红或断高亮,连字符串和注释都常混淆。
SQLTools 是目前最稳的“开箱即用”选择
它不是纯高亮插件,但自带语法定义、格式化、表名补全,且对 MySQL/PostgreSQL/SQLite 关键字做了方言区分。比如输入 JSON_EXTRACT,在 MySQL 文件里高亮,在 PostgreSQL 里就不触发;jsonb_extract_path 则反之。
- 安装后必须重启 Sublime,否则命令面板里看不到
sql_tools_format等命令 - 右下角点语法名时,选
SQL (SQLTools),别选旧版SQL或MySQL(那是子集,不支持通用语法) - 它默认不接管所有
.sql文件,需手动执行View → Syntax → Open all with current extension as… → SQL (SQLTools) - 高亮准确度比自带包高很多,但函数参数提示有限(比如
COUNT(后只提示COUNT(*),不列字段补全)
Better SQL Syntax 补高亮细节,专治双引号和美元符
如果你写 PostgreSQL 多,常遇到 "user_id" 被当成普通字符串、$func$ 块内语法失效,或者 MySQL 的反引号 `table_name` 不被识别——Better SQL Syntax 就是为这些细节优化的。
- 它不带格式化或执行功能,纯增强词法解析,体积小、启动快
- 安装后右下角选
SQL (Better SQL Syntax),路径通常是Packages/Better SQL Syntax/SQL.sublime-syntax - 和 SQLTools 可共存,但别同时启用两个语法——Sublime 会按加载顺序覆盖,建议只留一个主语法,用它配色即可
- 对嵌套注释(
/* /* inner */ */)支持更好,老语法常在这里崩掉
SublimeSQL 适合要连库写脚本的人
如果你不是只写脚本,还要在编辑器里直连数据库跑 SELECT、看结果、导出 CSV,那 SublimeSQL 比纯高亮插件更实用。
- 配置连接靠 JSON,填错一个字段(比如
port写成字符串"3306")就静默失败,无报错提示 - 它自带基础高亮,但不如 SQLTools 或 Better SQL 细致;建议把它当执行层,再单独装 Better SQL Syntax 做高亮
- 连接 SQLite 时路径必须是绝对路径,
./db.sqlite会报错;MySQL 则要注意secure_file_priv限制,LOAD DATA INFILE脚本得放对位置 - 执行结果默认显示在新标签页,关掉后下次执行不会自动重开,容易以为没反应
真正容易被忽略的是:语法高亮是否生效,80% 问题不在插件本身,而在文件是否被正确识别为 SQL。哪怕装了三个插件,只要右下角显示的是 Plain Text 或 SQL (MySQL),高亮就一定残缺。务必确认当前文件的语法路径是 Packages/SQLTools/SQL.sublime-syntax 或类似有效路径,而不是空壳或过期包。

















