Allow active Tables and Rows in IDE to be read-only (for safety) by default

Continuing the discussion from [Beta] Do not update table rows when pressing esc or when they have been modified:

There is a very big difference between the Developer browsing data for Read vs. for Update. Most of the time, it should be for Read, meaning that the App is free to update the displayed Rows without possibility of conflict.

Currently, the IDE has to assume Update mode, which guarantees conflicts between the IDE’s view of a Row and any subsequent automated updates of that same Row. Simply clicking on a cell, to view the full contents, means that we’re editing, and can override anything else the App writes to that cell while we’re editing. Which version of the cell then wins?

In read-only mode, the automation-updated version of the row always wins. This is the safest.


This is a nice safeguard, especially for the production data tables. Might be nice to be able to set the default on a per database level, but if not making the default read-only is better than the way it is now.

I’m usually willing to give up a little convenience if it helps prevent my screwing up a customer’s data.

Maybe I should expand on “allow”: while read-only is probably a sensible default for new Apps, the durable default should be under the developer’s control. If the developer wants to change that setting, they should be able to do so on a temporary or lasting basis.