Future of Access

BlueSpruce that's a good question. I would guess that it's because probably the majority of business users natively use Excel for tasks, they have to to crunch numbers, just like they have to use Word for documents. But Access is not in the same category - with it you can create applications that rival turnkey solutions. IT might be called in to manage someone's Excel files when they leave for another company, but just as likely some peer of the now gone employee takes over the files. You'd think that an employee would use or port to Access because it's more capable than Excel. By the same token, because Access is more complex, it'd be harder to wade in to if you had to take it over, esp if you're an IT person that has mild or no exposure to Access. Then factor in what Uncle Gizmo just said, that most home grown applications like these are a big mess inside. Not a lot of fun for IT.

The greatest mystery of all is why Microsoft, with all of it's resources, has not been able to come up with something that is just a great as Access is, that was built from the ground up to be acceptable to IT, hopefully anticipating a migration path between Access and that product. The potential for such a product would be colossal. Maybe Lightswitch could have been that, but they let it go so easily.
 
The greatest mystery of all is why Microsoft, with all of it's resources, has not been able to come up with something that is just a great as Access is, that was built from the ground up to be acceptable to IT...
Microsoft's answer to that is DotNet, and IT's embraced it. For years, MS has been preaching migration from Access to DotNet with SQL Server. They even created a DotNet vba_like language called vb.net, but not many developers use it anymore and MS seems like they want to deprecate it.
 
But .net is massively more complex than Access. Webforms tried to be like vb6/Access, not sure if those are considered bound controls. But webforms had a lot of negtives and is a backwatered framework at this point.

A corporate worker could dig in to a book or two and write a line of business application (which probably needed to be refactored by someone that was more experienced). That didn't happen much with .net - too steep of a climb.
 
Webforms tried to be like vb6/Access, not sure if those are considered bound controls...
Webforms operate via stateless unbound http requests.

I know some Access developers, like Albert Kallal and Jack Leach, who transitioned from Access to DotNet, but as you said, the learning curve is steep. I participated in a DotNet interop project where an Access FE was interfaced with QuickBooks Online.
 
The greatest mystery of all is why Microsoft, with all of it's resources, has not been able to come up with something that is just a great as Access is, that was built from the ground up to be acceptable to IT, hopefully anticipating a migration path between Access and that product. The potential for such a product would be colossal. Maybe Lightswitch could have been that, but they let it go so easily.
Corporations evolve. They start off as aggressive entrepreneurial innovative companies, but as time progresses the innovators leave and the corporations become ruled by lawyers and accountants. Look at Boeing's space program versus Musk's space program.

Because my memory is imperfect, I leaned on ChatGPT to provide the following answer:
That idea is most commonly associated with Murray Rothbard, an American economist and political theorist of the Austrian School and a major figure in libertarian thought.

Rothbard argued that large corporations—especially those deeply connected to regulation, subsidies, or government contracts—effectively become extensions of the state. In his view, the line between big business and government is often blurred, forming what he called a “corporate state” or “state capitalism.” He suggested that these corporations derive their power not from free markets but from their relationship with government, making them functionally indistinguishable from it.
For Microsoft, MS Access is probably nothing more than a "cash cow". Something that still provides revenue, but is no longer relevant to their corporate objectives. Consequently they don't want to invest in it.
 
The biggest problem with Access is not actually scalability, that can easily be handled by SQL Server or other RDBMS but is its clumsiness as a multi-developer platform to support parallel development by multiple developers at one time because it uses a single container for all objects.

An astute observation, Pat. Not unique, not the first time it has been said on the forum, but absolutely on point. I had that issue ten years ago with my big Navy security status tracker app.
 
What is this obsession with running in a browser? You don't need Access to run in a browser. You only need Access to be able to effectively connect to data sources across a WAN the same way that web apps do. Access is perfectly capable of doing this NOW. The issue is the connection is so slow it is like watching paint dry.

WHY do you think people should be willing to give up all the things that Access does and which a web app can never do? What is wrong with simply fixing the ONE limitation Access has and that is the speed of the connection to the remote database? I'm not saying this is a trivial problem to solve but in the greater scheme of things it is a pretty focused task and so maybe someone can figure out how to do it.

Yes, distribution of updates is easier with a browser but somehow those of us who create professional level Access apps manage to make this happen without disruption for our clients.

Agreed, forget about running Access in a browser. We can do that right now with RD.
Does anyone remember the Access User Voice request about making Access a better ODBC client?

AUV.PNG
 
Last edited:
And the same is true for some of the first iterations of programming like cobal... I understand many bank applications are built on incredibly antiquated software..,..
They are! I've worked for 2 major fortune 500 banks and they have many old parts of them that desperately need to be reimagined.
Same is true (even more so maybe) for gov entities. Worked for a state Taxing authority and they had 2 systems where "one guy" in the whole organization knew how to edit or maintain it. Boy, did he stand up straight when he walked. You couldn't tell him anything LOL because upon his whim the Arizona Dept of Revenue exists! Really incredibly awful risky stuff, but they do it
 
My goodness. We've been begging for better ODBC connection handling for 10 years now.
 
This particular request - to install SQL Server with Access actually happened. I think it was for A2002 or A2003. Access automatically installed a local desktop version of SQL Server.
You must be referring to SQL Server Compact 4.0. That's when we were able to create OLEDB ADP's (Access Data Projects). I think it was around until A2013, when MS decided to deprecate it because very few developers were using it. MS deprecates anything that has low usage. They don't want to spend money supporting products that don't produce good revenue for them.

Like you said earlier, if only MS would make Access work better with remote databases. Inside politics is the obstacle for improving Access.
 
Last edited:
The biggest problem with Access is not actually scalability, that can easily be handled by SQL Server or other RDBMS but is its clumsiness as a multi-developer platform to support parallel development by multiple developers at one time because it uses a single container for all objects.

Going 3rd party with source control solves the multiple developers problem.

I have been using joyfullservice (Access add-in) combined with Tortoise Git (Window Add-in) and Git Hub. I can export changes form the FE then commit to Git Hub. Changes can be merged in Git Hub and then downloaded and with the add-in to build a new FE from that source.

All the files created by the addin are text with 2 file for each form/report. One for the form and a 2nd for the VBA code behind form.
 
Source control is only part of the problem. I don't know how this tool works, it's been years since I last tried a source control addin. At that time, the process was abysmally slow but more important was that you had to remember to "check out" BEFORE you started modifying an object. Modifying an object should have automatically initiated the "check out". If you don't "check out", your changes didn't get logged. I would hope that newer versions are better.

The real issue is that if Bob makes a bad change and checks it back in, I may not be able to work on my piece if Bob's change broke something I needed.

Working as a team requires a build manager and the build manager should be the only person who can check objects in and he has to thoroughly check them as well as all other objects before the new changes can be incorporated into the current build.

I've tried a few times to have other developers work on isolated objects and that can work but again, you need one person who incorporates changes made by any team member. That meant me in all the times I tried this method since who can afford an extra developer who just handle's the build?
Using Git Hub, Bob is working on a fork as are you, there is no checkout. The changes are merged back into the main after testing and can always be rolled back.

I am working with a large FE, the add-in exported the original in a matter of minutes, changes take seconds. After working with source control I have been refactoring the code in a more vertical orientation to work better with side by side comparison.
 
Source control is only part of the problem. I don't know how this tool works, it's been years since I last tried a source control addin. At that time, the process was abysmally slow but more important was that you had to remember to "check out" BEFORE you started modifying an object. Modifying an object should have automatically initiated the "check out". If you don't "check out", your changes didn't get logged. I would hope that newer versions are better.

The real issue is that if Bob makes a bad change and checks it back in, I may not be able to work on my piece if Bob's change broke something I needed.

Working as a team requires a build manager and the build manager should be the only person who can check objects in and he has to thoroughly check them as well as all other objects before the new changes can be incorporated into the current build.

I've tried a few times to have other developers work on isolated objects and that can work but again, you need one person who incorporates changes made by any team member. That meant me in all the times I tried this method since who can afford an extra developer who just handle's the build?
I am a team member of four Access developers. Each of us has exclusively designated customers. I am my customer's BFF (or Best Friend Forever!) – that’s exactly what it sounds like and means I have worked closely with them throughout the years. Our four member team has rarely worked simultaneously on the same projects. If the need should arise to do so, each of us checks out a copy of the current build, none of us changes the same objects, each team member returns a new accdb that only contains the changes they made, the changes are imported into a copy of the current build, the team tests that copy, the customer tests that copy, and if all is well, the current build gets updated.
 
Last edited:
Microsoft announced the removal of Salesforce ODBC driver from Access, effective October 2025:
[...]
Which are the next ODBC's Microsoft will remove?
I don't think there are any other ODBC drivers built into Microsoft Access.
Does this answer your question?
 
I don't know how this tool works, it's been years since I last tried a source control addin. At that time, the process was abysmally slow but more important was that you had to remember to "check out" BEFORE you started modifying an object.
There was such an issue with Microsoft's own SCC plug-in for Access. And, I agree, this was a major nuisance.
AFAIK, all current source code control add-ins do not require to explicitly check out before making changes. For Git based version control, the Check Out step is generally no more part of the SCC process.

The real issue is that if Bob makes a bad change and checks it back in, I may not be able to work on my piece if Bob's change broke something I needed.
This is neither specific to Access nor to source code control. If someone breaks code in your project, there will be a problem.
Source code control just makes it easier to add or modify code, be it good or bad, in a shared project.


Working as a team requires a build manager and the build manager should be the only person who can check objects in and he has to thoroughly check them as well as all other objects before the new changes can be incorporated into the current build.
I strongly disagree with having a human person (=bottleneck) as gatekeeper to validate all check-ins to a system. This will slow down the development process to a crawl.

With Git any developer would usually check in into a local copy of the repository first, and only later will these changes be incorporated into the common shared source code in a "central" repository. - This would be were you could insert the human gatekeeper into the process, without creating too much of a drag. Nonetheless, I still discourage that.

Automated testing is the key to reduce the risk of someone checking in bad code into a project and breaking it for everybody else.
For larger projects we have an automated process in place, that after each check-in will ....
- create the project's Access file from source,
- (try to) compile the code,
- run our code quality checks (powered by MZ-Tools),
- run all Unit/Integrations tests for the project.
If any of these fail, the automation process will alert the offending developer and optionally other team members of the problem.

As this happens after the check-in operation in our process, it does not prevent bad code from being checked into the repository. But the alert to the relevant developers allows for a quick fix of the problem.
One could also change the process to automatically roll back such a bad check-in and thus prevent bad code from entering the repository.
 
I don't think there are any other ODBC drivers built into Microsoft Access.
Does this answer your question?
None of the ODBC drivers are built into Access. Access does have Data Connectors that are integrated with 3rd party API's.
 
None of the ODBC drivers are built into Access.
Did you actually the read the announcement you linked to?
The Salesforce ODBC drives *is* built into Access and will now be removed. That is what the announcement was about.
 

Users who are viewing this thread

Back
Top Bottom