Skip to main content
TablePro connects to Trino with a driver written in native Swift. It speaks the Trino client REST protocol directly over HTTP, so there is no JDBC jar or CLI to install. Queries run over POST /v1/statement and TablePro pages through the results until the cluster is done. Presto uses the same protocol under a different header prefix. The current driver targets Trino.

Install the plugin

Trino is a downloadable driver. Open Settings > Plugins, find Trino, and install it. The driver downloads and loads without restarting the app.

Connection settings

Trino requires TLS for any authentication. If you pick Password or JWT, set an SSL mode so the coordinator accepts the credentials.

Catalogs, schemas, and tables

A Trino connection is scoped to a catalog and schema, but every query can name objects in full as catalog.schema.table. TablePro shows catalogs from SHOW CATALOGS, schemas from SHOW SCHEMAS, and tables and columns from each catalog’s information_schema. Materialized views appear alongside tables and views. Expand a catalog to see its schemas, then a schema to see its tables. Table row counts come from SHOW STATS, and table and column comments come from information_schema and the system.metadata tables. Identifiers are quoted with double quotes. Results page with OFFSET and FETCH FIRST, the order Trino’s grammar requires.

Types

Trino’s type system maps to TablePro’s grid as follows:
  • Numbers keep full precision. bigint and decimal are read as exact text, not floating point.
  • varbinary is shown as hex.
  • array, map, and row are shown as JSON.
  • json opens in the JSON viewer.
  • timestamp, time, and their with time zone forms keep the value the server returned.

Editing rows and schema

Edit cells in the data grid and TablePro writes INSERT, UPDATE, and DELETE back, keyed on the primary key when the connector reports one, or on the row’s other column values otherwise. Values are written with their Trino type, so a varchar holding digits stays quoted and a number stays unquoted. Columns whose type cannot be compared with =, such as array, map, and row, are left out of the WHERE clause. The Structure tab creates tables and adds, drops, renames, and retypes columns. Statements run in autocommit, matching how most Trino connectors handle DDL. Whether a write succeeds depends on the connected catalog. Many connectors are read-only or support only part of SQL, so a valid statement can still return NOT_SUPPORTED from the connector. Changing a column’s type in particular is only supported by a few connectors.

Authentication

  • Username & Password sends HTTP Basic auth. Use it for LDAP or password-file authentication. Requires TLS.
  • JWT Access Token sends the token as a bearer credential. Requires TLS.
  • Client certificate works with any SSL mode: set the Client Certificate and Client Key files in the SSL pane and TablePro presents them for mutual TLS. Use it for Trino’s certificate authentication.
Kerberos and OAuth 2.0 are not yet supported.

Troubleshooting

  • Cannot reach the coordinator. Confirm the host and that the coordinator port is open. The default is 8080 for HTTP and 8443 for HTTPS.
  • Authentication failed. Password and JWT auth need TLS. Turn SSL on and confirm the credentials.
  • A write fails with NOT_SUPPORTED. The connected catalog’s connector does not support that operation. Check the connector’s documentation for what it allows.