# Query available data sources deliberately

A SELECT can read tables, views, subqueries and documented table functions. On the server, a source named `database.schema.table` selects a registered managed database for that statement without changing the connection's selected database.

```sql
SELECT id, name
FROM reporting.main.products
WHERE id = 1;
```

This example requires a registered `reporting` database and its `products` table. It is a qualified server source, not a remote network address. The public interface does not promise federated execution against arbitrary external databases.

For an external dataset, import rows through a supported format or inspect a confined local file with `file()`. Define types explicitly and verify the imported data before joining it with application tables. The application owns any refresh procedure; a local copy does not stay synchronized by itself.

An embedded connection has its own documented namespace operations through `ATTACH` and `DETACH`. Keep those separate from the server's managed-database commands. In either mode, respect the rule against simultaneous access to one database file from separate processes.

See [FROM sources](https://coordinatordb.com/docs/reference/statements/select/from), [database selection](https://coordinatordb.com/docs/reference/statements/use), [file input](https://coordinatordb.com/docs/reference/functions/table-functions/file) and [deployment modes](https://coordinatordb.com/docs/get-started/about/deployment-modes).
