Yeah but sometimes you do not want to save it because you are still working it out, especially is you are replacing a huge chunk of codes with a different approach up on some new revelation of how to do it better. So you save your existing codes and test various possibilities in the new approach, and you are getting pretty pleased with what's going on and then everything is gone in a random crash or Access just does not save.
There's one Access problem that's particularly unhelpful to people feeling their way around when coding, and that is in how you are prevented from saving an non-working query.
I won't quote the whole article, but your comments overlap with working in a true development environment. All of us have our little DBs that we tweak and adjust and occasionally curse because of their intransigence. But once you run into the point of trying to keep a DB usable while simultaneously updating it, you have reached the point of establishing a formal development environment. When that happens, it is a pain in the tail-bone to set up but it saves your sanity.
This is what I did with my U.S. Navy database that tracked server status with respect to published patches and mandatory security alerts. I do NOT think this is the only way to approach this problem, but it worked for me. I will also point out that it is an OPERATION solution to a systemic problem, and the systemic problem is not a bug, but a natural property of ALL projects that develop ever-growing code bases.
I had four folders under a master project folder. These folders were DEV, TEST, STAGING, and PROD. Of these, DEV, TEST, and PROD had a folder for the FE and a second folder for the BE. The FE code and shared BE that everyone used could be copied from, but not executed in, PROD. Only I and my two assistants could deal with (had permissions for) the other folders.
I worked in private folder-tree DEV to fix bugs and add new features. That copy of the DB didn't have to work every day and it was OK if I left it in a shambles at the end of a work day. It had its own BE file that was usually just a recent copy of the PROD DB, though it was fair game for updates if a structural change was coming down the pipeline.
When I was ready to do a serious test of the updated DB, I copied it to TEST and reset the BE links to the TEST DB, usually just another recent copy from PROD unless structural changes were coming, in which case it was a copy of DEV's updated BE file.
When the time came to publish, I copied the
successful TEST version to STAGING. That was a special-case folder where I established the final linkages to the PROD folder but until that was done, the STAGING copy couldn't be run because initially, its DB pointed to TEST folders. Nothing ever ran from it except a last-moment verification that the mapping was correct.
I wasn't allowed to do an auto-update (a batch file found in other posts of this forum), but I could and did notify my users when a new version was available that fixed certain bugs or offered new features. When a structural change was coming down the pipeline, I set up some down time and a DDL sequence to adjust the production BE files in a way that wouldn't lose data.
This is an overview and there were more than a few pitfalls along the way, but this worked in my environment. Because the complexity of that environment had grown so much, the more relaxed method of updating an Access DB had STOPPED working.
Each of us must decide for ourselves when we reach that point. I won't tell you what to do. I WILL tell you that you will realize you have reached that point when your hairline becomes negatively affected by your frustrations and your family asks "Momma, who is that man?" when you walk in the door at ungodly hours of the night.