> For the complete documentation index, see [llms.txt](https://doc.orbeon.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://doc.orbeon.com/form-runner/persistence/db-support.md).

# Database support

## Builtin and custom providers

Orbeon Forms provides persistence of form definitions and form data through *persistence providers*. There are two types of providers:

* **Built-in relational provider**: This provides built-in support for Oracle, MySQL, SQL Server, PostgreSQL, and DB2.
* **Custom persistence providers**: See [Custom persistence providers](/form-runner/api/persistence/custom-persistence-providers.md) for details.

For relational database setup instructions, see [Using Form Runner with a relational database](/form-runner/persistence/relational-db.md).

## Feature matrix

With the built-in relational provider, some features are not available for all databases. The following table summarizes the support for each database.

| Feature                                                                                                                   | Oracle | MySQL | SQL Server | PostgreSQL | DB2 |
| ------------------------------------------------------------------------------------------------------------------------- | ------ | ----- | ---------- | ---------- | --- |
| [Form controls and layouts including repeated grids and sections](https://blog.orbeon.com/2014/01/repeated-sections.html) | Y      | Y     | Y          | Y          | Y   |
| [Versioning](https://blog.orbeon.com/2014/02/form-versioning.html)                                                        | Y      | Y     | Y          | Y          | Y   |
| [Owner/group-based permissions](/form-runner/access-control/owner-group.md)                                               | Y      | Y     | Y          | Y          | Y   |
| [Autosave](/form-runner/persistence/autosave.md)                                                                          | Y      | Y     | Y          | Y          | Y   |
| [Flat view](/form-runner/persistence/flat-view.md)                                                                        | Y      | N     | Y          | Y          | Y   |
| Orbeon Forms PE support                                                                                                   | Y      | Y     | Y          | Y          | Y   |
| Orbeon Forms CE support                                                                                                   | N      | Y     | N          | Y          | N   |

## Older database support

Support for the eXist database was deprecated since Orbeon Forms 2019.1 and removed since Orbeon Forms 2023.1.

## See also

* [Using Form Runner with a relational database](/form-runner/persistence/relational-db.md)
* [Relational database schema](/form-runner/persistence/relational-db-schema.md)
* [Custom persistence providers](/form-runner/api/persistence/custom-persistence-providers.md)
