# Database (/docs/verdent-manager/my-app/database)

> Browse tables and safely manage production records from My app



Open a Cloud project and select **My app → Database** to inspect the data used by the live app.

<Warning>
  This page works with production data. Adding, editing, or deleting a row affects the live app immediately and does not require another publish.
</Warning>

## Connect a database [#connect-a-database]

If no database or tables are detected, select **Add a database with Verdent**. Verdent sends a request to the active project task to create a database and the data model needed by the app.

Review and test the generated code, then select **Publish changes**. Tables appear in My app after the production database is connected and contains a schema.

## Browse tables [#browse-tables]

The Database home lists every detected table and its record count. From this page you can:

* select a table to inspect its records
* copy a table name from its card
* return to the table list with the back button

My app currently manages table records. Creating, renaming, or deleting tables and columns is not available from this interface; request schema changes through a project task instead.

## Work with table data [#work-with-table-data]

### Sort and filter [#sort-and-filter]

Open the sort menu in a column header to sort ascending, descending, or remove sorting.

Select **Filter** to combine one or more column filters:

| Column type                       | Available conditions                                             |
| --------------------------------- | ---------------------------------------------------------------- |
| Text and other non-numeric values | Equals, Contains                                                 |
| Numeric values                    | Equals, Greater than, Greater or equal, Less than, Less or equal |

Select **Confirm** to apply every completed filter. Remove an individual filter, select **Clear all**, or use the delete icon on the active Filter button to return to the unfiltered table.

### Show and hide columns [#show-and-hide-columns]

Select **Columns** and toggle fields to control which columns are visible in the table. This changes only the current view; it does not modify the database schema or delete data.

### Add a row [#add-a-row]

Select **Add row**, enter values, and save.

* Number fields are saved as numbers and boolean fields use an on/off control.
* Date and time fields use a date-time input when the stored value has a supported format.
* Blank fields are omitted so database defaults can apply.
* Generated, auto-increment, identity, and generated UUID fields are not shown as writable inputs.

If you close a form with unsaved values, Verdent asks whether to discard the changes.

### Edit a row or cell [#edit-a-row-or-cell]

You can edit data in two ways:

* Select the pencil button on a row to open the full row editor.
* Double-click a non-primary-key cell to edit that value in place. Press **Enter** or select **Save** to apply it; press **Escape** to cancel.

Primary-key fields are read-only. A table must have a primary key before My app can safely identify records for editing.

### Delete rows [#delete-rows]

Select one or more rows and choose **Delete**. Verdent asks for confirmation before deleting them.

<Warning>
  Row deletion cannot be undone from My app. Verify the selected records before confirming.
</Warning>

A table must have a primary key before rows can be deleted.

## Export, refresh, and pagination [#export-refresh-and-pagination]

* **Export CSV** downloads the table using the active filters and sorting. The export is not limited to the currently visible page.
* **Refresh** reloads the current table from the production database.
* **Rows per page** supports 10, 20, 50, or 100 records, with page controls on the right.

## Storage limits [#storage-limits]

When database storage is full, adding and editing rows is disabled. Deleting rows remains available when the table has a primary key. If Verdent cannot verify the database quota, it also disables adding and editing until the quota can be checked again. The notice offers an upgrade when a higher plan is available; otherwise, it provides a way to contact support.

See [Deployment Resources and Limits](/docs/account-billing/deployment-resources) for the database allowance included with each plan.
