Skip to main content

SurrealDB Connections

TablePro connects to SurrealDB 2.x and 3.x over the HTTP RPC protocol. Browse namespaces and databases in the sidebar, run SurrealQL in the editor, and edit records inline in the data grid. The driver talks CBOR, so record links, datetimes, durations, decimals, and UUIDs keep their types instead of arriving as plain strings.

Quick Setup

Click New Connection, select SurrealDB, enter the host and port (default 8000), pick an auth level, and connect. The plugin installs on first use, or install it from Settings > Plugins > Browse > SurrealDB Driver.

Namespaces and databases

SurrealDB nests tables under a namespace and a database. TablePro maps that straight onto the sidebar: namespaces sit at the top level, databases sit inside them, and tables sit inside a database. Switch either level without reconnecting. Set the namespace in the Namespace field when you create the connection. Leave Database empty to pick one from the sidebar after connecting.

Authentication

SurrealDB cannot infer which level your credentials belong to, so pick the one that matches the user you are signing in as.
Auth LevelUse it forNeeds
RootA root user, defined with DEFINE USER ... ON ROOTUsername, password
NamespaceA namespace userUsername, password, namespace
DatabaseA database userUsername, password, namespace, database
Record AccessA record user, defined with DEFINE ACCESS ... TYPE RECORDNamespace, database, access method, and the signin fields
TokenA JWT you already hold, including SurrealDB CloudThe token
Only a root user can list every namespace. With namespace or database credentials, TablePro browses the scope your user is limited to.

Connection Settings

Required Fields

FieldDescription
HostServer host, e.g. localhost
PortHTTP port, default 8000
Auth LevelRoot, Namespace, Database, Record Access, or Token

Optional Fields

FieldDescription
NamespaceThe namespace to open. Required for every level except Root and Token
DatabaseThe database to open. Required for Database and Record Access; otherwise pick one from the sidebar
SSLEnable to connect over HTTPS
Skip TLS VerificationTrust a self-signed certificate (Advanced section)
TokenA JWT, shown when Auth Level is Token
Access MethodThe name from DEFINE ACCESS, shown when Auth Level is Record Access

Editing records

The grid writes one field at a time. Changing a cell runs an UPDATE that sets only the fields you touched, so computed FUTURE fields and fields another writer changed are left alone.
  • id is the primary key and is read-only. Clear it on a new row to let SurrealDB generate one.
  • A record link shows as table:id. Objects and arrays show as compact JSON and are edited as JSON.
  • On a RELATION table, in and out sit next to id.
Values are sent as typed parameters, so an int column stays an int and a filter value is never treated as SurrealQL.

Schemaless tables

A SCHEMALESS table has no declared fields. TablePro reads the columns from the rows it fetched, so a field only some records carry still gets a column, and records missing it show an empty cell.

Limitations

  • Transactions are not available. Each request is independent over HTTP, so BEGIN in one request cannot affect another. Run BEGIN TRANSACTION; ... COMMIT TRANSACTION; as a single query in the editor instead.
  • The structure editor is read-only. Create and change fields and indexes with DEFINE FIELD and DEFINE INDEX in the editor.
  • Live queries (LIVE SELECT) are not supported.
  • Range values display but cannot be edited.
  • The editor treats SurrealQL as plain text, without syntax coloring.
  • SurrealDB 1.x is not supported.