Skip to content

Databases

immudb Database Management in VS Code

immudb is an immutable database with cryptographic verification and its own SQL dialect. DBCode connects directly to the native gRPC service on port 3322, so the optional PostgreSQL-compatible endpoint is not required.

The DBCode driver is validated against immudb 1.9.7 and supports its database and table model without adding a schema layer that the server does not have.

To connect to immudb in DBCode:

  1. Open the DBCode extension and select Add Connection.
  2. Select immudb as the database type.
  3. Enter the host and native gRPC port. The default port is 3322.
  4. Enter the database name. A new server uses defaultdb by default.
  5. Enter a username and password, or select a Command authentication profile.
  6. Configure optional TLS, mutual TLS, or an SSH tunnel.
  7. Save the connection and open it from the DB Explorer.

The default credentials for a new local immudb server are immudb / immudb. Change them for any shared or production server.

Enable SSL when the gRPC endpoint serves TLS. DBCode supports:

  • Full certificate and hostname verification
  • CA verification without hostname verification
  • Trusting the server certificate without verification
  • A custom CA certificate
  • A client certificate and private key for mutual TLS

Use full verification for production connections. The less strict modes are intended for controlled environments with private or development certificates.

FeatureSupport
Run immudb SQLYes
Visual query builderYes
Browse databases and tablesYes
Inspect columns, primary keys, and indexesYes
Insert and delete rowsYes
Edit grid cellsYes, through a full-row UPSERT
Create databasesYes
Create and drop tablesYes
Create indexesYes
Add and drop columnsYes
Script table DDLYes
TransactionsYes, with pinned sessions
Server monitoringVersion, start time, transactions, databases, and disk size

immudb has databases and tables, but no schema namespace. DBCode mirrors that model directly.

Grid edits use a full-row UPSERT. This preserves columns that were not edited because an immudb partial UPSERT sets omitted columns to null. Changing a primary key uses one pinned session for the delete and insert. If the replacement insert fails, DBCode restores the original row.

CREATE TABLE accounts (
id INTEGER NOT NULL AUTO_INCREMENT,
name VARCHAR[128] NOT NULL,
created_at TIMESTAMP,
PRIMARY KEY id
);
CREATE UNIQUE INDEX ON accounts (name);
INSERT INTO accounts (name, created_at)
VALUES ('Ada', CAST('2026-08-29 10:30:00.000000' AS TIMESTAMP));
SELECT * FROM accounts LIMIT 100 OFFSET 0;

For server setup and SQL reference information, see the immudb documentation.