VS Code 连接数据库需安装 SQLTools 框架及对应数据库驱动插件(如 PostgreSQL Driver),仅装 SQLTools 会提示“No driver installed”;配置时 host 和 port 易错,本地 MySQL 用 localhost、Docker 中 PG 用 host.docker.internal 或宿主机 IP;执行前须手动选择连接,导出 CSV 仅限当前页,大结果需调高 sqltools.resultsLimit。

VS Code 本身不内置数据库连接能力,必须依赖扩展;最常用、维护活跃且支持多数据库的是 SQLTools(配合对应驱动插件),不是 Database Client 或已停更的 MySQL 单一插件。
装对扩展:SQLTools + 对应驱动插件
SQLTools 是一个框架型扩展,它不直接连接数据库,而是通过“驱动插件”提供具体协议支持。只装 SQLTools 会提示 “No driver installed”。必须额外安装对应数据库的驱动插件:
- PostgreSQL → 安装
SQLTools PostgreSQL Driver - MySQL / MariaDB → 安装
SQLTools MySQL/MariaDB Driver - SQLite → 安装
SQLTools SQLite Driver - SQL Server → 安装
SQLTools MSSQL Driver
所有驱动插件在 VS Code 扩展市场中搜索 “SQLTools” 即可找到,名称带明确数据库类型。不要装名字含 “for SQLTools” 但作者非 mtxr 的第三方驱动——兼容性差、更新滞后。
配置连接时,host 和 port 别写错,尤其 Docker 或本地服务
新建连接后填配置项,最容易出错的是 host 和 port:
- 本地运行的 MySQL(如用 Homebrew 或 XAMPP):host 通常为
localhost,不是127.0.0.1(某些 MySQL 配置下localhost走 socket,127.0.0.1才走 TCP) - Docker 容器中的 PostgreSQL:host 不能填
localhost(那是宿主机的 localhost),要填宿主机 IP 或使用host.docker.internal(Docker Desktop 支持) - 云数据库(如 AWS RDS):host 是端点地址(如
mydb.xxxxxxx.us-east-1.rds.amazonaws.com),port 一般为5432(PG)或3306(MySQL),但需确认安全组是否放行
如果连不上,先在终端用命令行客户端验证:psql -h host -U user -d dbname 或 mysql -h host -u user -p —— 连得通,再调 VS Code 配置。
执行 SQL 时注意当前连接上下文和文件后缀
SQLTools 不会自动识别你打开的 .sql 文件属于哪个数据库。执行前必须手动选择连接:
- 右下角状态栏点击数据库图标(显示 “No connection” 或当前连接名)→ 选择目标连接
- 或按
Ctrl+Shift+P(Win/Linux) /Cmd+Shift+P(Mac)→ 输入SQLTools: Connect→ 选连接 - 执行语句时,确保光标在 SQL 片段内,或选中一段(否则可能执行整个文件)
文件后缀不影响执行逻辑,但建议用 .sql;如果文件是 .py 或 .js,即使里面写了 SQL,SQLTools 默认不激活执行按钮(需手动触发命令)。
查询结果导出和大结果集卡顿怎么处理
默认点击 “Run Query” 后结果以表格形式展示在新标签页,但导出和性能有隐含限制:
- 导出 CSV:右键结果表格 →
Export as CSV,但该功能仅对当前页生效(默认每页 100 行),不是全部数据;如需全量,先在设置里改sqltools.resultsLimit(如设为10000),再重跑 - 查询超时或卡死:检查是否漏加
LIMIT,或在连接配置中开启connectionTimeout(单位毫秒,如30000) -
中文乱码:确保数据库连接配置中设置了
charset(MySQL 驱动需显式填utf8mb4),否则SELECT中文字段可能显示为???
复杂查询或跨库 JOIN 最好先在命令行验证逻辑,VS Code 的 SQLTools 是轻量操作工具,不是替代 DBeaver 或 DataGrip 的完整 IDE。










