Database Client
This project is a database client for Visual Studio Code. It supports relational/NoSQL/SSH/FTP/ES in one extension and helps you work faster inside the editor.
Project site: vscode-database-client · 中文文档

Supported Databases & Features
- Databases: MySQL/MariaDB, PostgreSQL, Oracle, DM, SQL Server, SQLite, Exasol
- NoSQL & Services: MongoDB, Redis, ElasticSearch, SSH, FTP
- Features: Connect, Query, Table/View browsing, Export/Import, Status panel, History, Mock data
Installation
- Install from the Visual Studio Code Marketplace or Open VSX
- Oracle driver: if
oracledb is already installed, it loads directly; when missing or ABI mismatch, the extension provides a one-time install/rebuild hint
Quick Start
- Open Database Explorer and click
+
- Pick your database, fill in connection settings, click Connect
- Open Query: use
Open Query on a database node
- Shortcuts: run selected/current SQL
Ctrl+Enter; run all Ctrl+Shift+Enter (mysql.runSQL)

Tables & Views
- Open a table to view data; use the side button to open in a new page
- Pagination:
- Oracle 12c+:
FETCH FIRST <limit> ROWS ONLY
- Oracle 11g: auto fallback to
ROWNUM Top-N: SELECT * FROM (SELECT ... ORDER BY ...) WHERE ROWNUM <= <limit>
- Export: Excel/JSON from the data view

Caching & Refresh
- Caches connection/Schema/table/column metadata to improve performance
- Click refresh to clear and reload; external schema changes require manual refresh

Connection Pool & Settings
- Pooling available for PostgreSQL/Oracle/DM; toggle with settings:
database-client.pool.enabled (boolean)
database-client.pool.maxSize (integer)
- When disabled, connections use direct mode
Proxy & SSL
- SOCKS proxy:
socksProxyHost, socksProxyPort
- HTTP proxy:
httpProxyHost, httpProxyPort
- SSL:
useSSL, caPath, clientCertPath, clientKeyPath
- ES/Oracle paths may differ; configure host/port/Instant Client path accordingly
Settings (Common)
database-client.defaultSelectLimit: default row limit in table view
database-client.highlightSQLBlock: highlight SQL blocks in editor
database-client.preferConnectionName: prefer user connection name in the tree
database-client.disableSqlCodeLen: disable SQL CodeLens
database-client.pool.enabled: enable pooling for supported databases
database-client.pool.maxSize: max pool size
database-client.functions: extend function completion per dialect

Backup/Import
- Right-click a Database or Table node for Export/Import
- For backup stability, consider using external CLI tools (mysql_dump/pg_dump) via PATH

History & Mock Data
- View recent SQL history via the History panel
- Generate mock data with built-in tools

Troubleshooting
- ORA-00933: remove trailing semicolons in editor; use supported pagination (
FETCH FIRST on 12c+, fallback to ROWNUM on 11g)
- Oracle driver not loaded: ensure
node_modules/oracledb exists in the installed extension and Instant Client path is set; rebuild for Electron if needed
- DM driver optional: if
dmdb is not installed, features depending on it will be disabled without breaking core flows
Development
- Dev:
npm run dev (watch)
- Build:
npm run build (extension + webview)
- Publish:
vscode:prepublish runs build automatically
Telemetry Reporting
- Collects anonymous usage data to improve products. Read the Privacy Statement
- Follows VS Code telemetry settings; disable via
"database-client.telemetry.usesOnlineServices": false
Credits
| |