For years, our software company has offered programming and support for Visual FoxPro. And we still do today. Some of our customers are running large VFP programs, that span millions of lines of code. But Microsoft no longer supports VFP. So people often come to us and ask to help them migrate their applications to a different platform.
Sometimes customers ask whether we recommend Microsoft Access. In a word, “No”.
There are several reasons why…
Access comes in handy when you need to capture, manage and generate professional-looking reports. It’s relatively easy to install. If you’re into merging data, you can integrate it with Word or Excel. And if your Access application is well-written, it can handle multiple users before heavy usage and larger file sizes start bogging down its performance.
While Access is still fairly popular, it has several limitations. First, Access has been around for a long time. But it hasn’t kept up with recent features that you’ll find in other database apps. Second, there have been issues with opportunistic locking on Windows file servers, which can lead to data corruption.
Thus, Access often isn’t the best solution, even for small businesses. Here are even more reasons why we recommend other database solutions:
- Size Limit. Any company that has more than 2GB of data will soon bump up against the upper file size limits with MS Access. If you run a large company or department, Access will almost certainly be too small to meet your needs.
- Internet Access is Problematic. While we’ve seen a few clever attempts at making Access data available over the web, today there are better alternatives for web development.
- User Limitations. Access works best for smaller businesses with only a few concurrent users. Any more than that, and you’ll start serious noticing performance problems as soon as multiple users try to access the database at once.
- Design issues. While it’s true that Access databases can be created by almost anyone, that isn’t necessarily a good thing. Oftentimes we encounter Access tables that could have made use of relational data structures. Instead, they’re laid out as flat files, with duplicate data fields across multiple tables. When data is updated in one table, the designer didn’t know how to handle updating related fields. Then, users scratch their heads, wondering which field is correct?
- Can you say “Data Corruption”? It’s not unusual for us to receive frantic calls from folks who can’t get into their database any more. We can often repair the damage—but if given the choice between Access and other more reliable database applications, why entrust your mission-critical data to Access?
So, what are our options?
Fortunately, there are several great alternatives available. Here are just a few:
- Migrate your data to SQL Server or SQL Express, and the user interface to C#.
- If you want to make your data available over the web, and you’re more inclined to use open source solutions, you might consider PostgreSQL for the database and Node.js/Express for the user interface.
- When you need to incorporate mobile devices into the mix, there are several additional factors to consider.
This article might raise more questions for you than answers. But not to worry! We’d be happy to walk through your specific situation and recommend a solution that would work best for your company.