Connect a database
Add one
Settings → Connections. Paste a path, press Check, press Add & use.
Check reads directory entries only — no manifests, no data — and reports what it found, so a typo is caught before it becomes a connection that lists nothing.
Switch between them
The picker in the console header switches the active connection. The catalog is
repointed in place; nothing restarts. Pins, recents and query history are keyed by
database, so switching switches those too — a table called moments in a demo corpus
has nothing to do with one of the same name in production.
Pin one, ignoring the settings file
LANCE_ROOT=/path/to/tables make devLANCE_ROOT wins over any saved connection, and the settings page says so and greys
the connection list out rather than letting you edit something with no effect.
This is also how to point an agent at one specific database regardless of what the console is doing — see Point an agent at it.
Where the root comes from
In order, first match wins:
LANCE_ROOT- the active saved connection
- the ingest output directory, only if it actually holds tables
- nothing — and the console says so
The settings page shows which rung produced the current root, because a resolved value with no provenance is what makes people edit the wrong file.
The datasets LanceDB publishes
LanceDB re-encoded about thirty canonical ML datasets into Lance and put them on
HuggingFace under lance-format/*. Those can be browsed, and the settings page
offers five of them as one-click sources so a fresh install has something to open:
hf://datasets/lance-format/openvid-lance/dataPaste one and press Check and you get a real answer — the table names, or the reason there are none. Everything the console does then works unchanged: schema, versions, indices, fragments, a page of rows, and the cost of each in bytes.
openvid is the one worth opening first. It is 937,957 rows carrying the MP4s
themselves in a blob column beside their embeddings and captions, which is the same
shape the demo's corpus has — so the claim this tool exists to make can be checked
against somebody else's data. Opening it costs 24,568 bytes. Browsing five rows costs
about 73 KB and reads no video at all; the blob column is omitted from the page
with a reason, exactly as it is locally.
Two honest limits. Listing tables is an HTTP call to the Hub rather than a directory read, so it can fail for reasons that have nothing to do with your data — and when it does you get the reason rather than an empty database. And the on-disk byte split is unsupported here: it comes from walking the directory a table sits in, and a number derived from the manifest instead would look the same on screen and mean something else.
Other remote URIs
s3://, gs://, az:// and db:// connections can be saved. They cannot be
browsed:
Connected, and this cannot be browsed. This is a remote URI. Discovery walks a directory, so nothing here can list what a bucket or a database endpoint holds — that needs an adapter which does not exist yet.
That is a limitation of this tool, not a fact about your data, and it is worded that way deliberately. Saving one is harmless; it is held as a preview until an adapter exists.
Three states, not two: discovery and the on-disk byte split are unsupported (there is no adapter, and there is no directory to walk), while inspecting a named table and the IO meter are unverified — Lance can open a remote URI directly, so they may well work, and claiming they do not would be as much of a guess as claiming they do.
A directory that will not open
A directory named *.lance that Lance cannot open — an interrupted write, a
half-copied dataset — is reported as unreadable with the reason, rather than skipped.
It used to take the entire table listing down with it; now it is one line, and every
other table still lists.