Skip to main content

Change Tracking

Changes are queued in memory, not applied immediately. Edit cells, insert rows, delete rows, then review everything before saving. Nothing touches the database until you click Save Changes. The queue is per-tab; switching tabs preserves your edits.
Pending edits, inserts, and deletions highlighted in the data grid

Data grid with pending changes highlighted

Data Changes

Edit cells: double-click a cell to edit (see Data Grid). Changes queue immediately. Changing a value back to its original removes it from the queue. Columns the driver marks immutable, such as MongoDB’s _id, cannot be edited. Add rows: click + Add in the status bar or press Cmd+Shift+N. A new row appears at the bottom of the grid; columns with default values are pre-filled with DEFAULT. Edits to cells in a new row fold into the INSERT, not tracked as separate updates. Delete rows: select rows and press Delete. Deleted rows show a strikethrough and stay visible until you save. Saving asks you to confirm before the rows are permanently deleted.
Deleting many rows saves as one batched DELETE with OR-combined conditions, not one query per row. Very large selections are split into a few statements to stay within the engine’s bind-parameter limit.

Saving

Click Save Changes (the toolbar checkmark) or press Cmd+S. TablePro generates parameterized SQL, executes it, clears the queue, and refreshes the grid. Tables without a primary key are updated and deleted by matching every original column value; NULL values match with IS NULL. Saving fails with an error only when a row cannot be identified. There is no discard button. To drop pending changes, undo them, or accept the Discard Unsaved Changes? prompt that appears when you refresh, sort, filter, change pages, or close the tab with edits pending.

Previewing SQL

Click the eye icon in the toolbar or press Cmd+Shift+P to see the exact SQL before saving. The preview inlines parameter values so you can verify what will run, and Copy All copies every statement.

Undo & Redo

Cmd+Z is context-aware: it undoes text edits when the SQL editor is focused and data changes when the grid is focused. Deleting multiple rows is a single undo action; undoing restores them all at once. Stacks are per-tab, and saving clears them.

Schema Changes

Structure edits (columns, indexes, foreign keys, primary key) use the same queue: changes are tracked locally with visual indicators, previewable as DDL, and applied with Save Changes. See Table Structure.