Best approach for managing separate development and production databases?

What is the best way to maintain separate development and production environments with Appsheet?

The solution I’ve seen recommended is to create separate apps for development and production and then upgrade the production app to the most recent version of the development app when you want to deploy changes to production. A problem with this approach however is that is doesn’t accomodate the situation where you have separate databases for development and production. In this case, you need to manually change the configuration of each table within the development app before upgrading your production app. This is very monotonous and error-prone if your app has more than a few tables.

I’ve considered using table partitions to use the development or production data source conditionally based on the app id, though this seems equally prone to failure in the long run.

1 Like

Making a copy and using the app-upgrade is likely the most optimal way. Unless you’re needing to make structural changes to the data source. Or unless you’re a co-author without access to the upgrade feature and the app-owner is not competent. Or unless you’re making a larger upgrade that’ll take some time and the live app might require smaller tweaks in the meantime.

Latest & Stable versioning is another good option. But again, if you have a separate dev source and need to make data structure changes, it’ll be tough. And it’s only available for Enterprise plans.

Good thing to do whenever possible is make structural changes at separate times as other app edits.

It’s definitely a weak point of the platform.

2 Likes