Microsoft Access

What is Microsoft Access?

The fact is, most people don't understand what Microsoft Access is. That includes most developers. This fact struck me in particular at the start of a recent project overhauling a collection of legacy Access applications. Naturally the end users were pretty murky on what Access was, they just knew they had to open Access to get to their applications. The business analyst who had been managing a lot of configuration and building queries and reports was certainly not a developer, and was not well versed in how Access applications are (or can be) architected. My colleague and lead on the project, a competent and experienced developer in both .Net and hardware control languages, also hadn't really seen Access since college, where it was just presented as a "little database" for teaching RDBMS concepts.

I ended up spending a hour and a half giving my developer colleague a crash course in what Access really is, from my perspective, and how Access application development should be done. That gave us a much better common foundation to begin planning our project. Despite the ubiquity of Microsoft Access I believe this understanding is as rare as it is useful. And so I begin a series here on Access fundamentals from a developer's perspective. We'll start today with the most basic question: What is Microsoft Access?

Read more

Microsoft Access Field Data Type Reference

This page lists every possible field data type that a native Access (Access Database Engine) database can contain. It also shows which methods can be used to create fields of the given type. The information here applies to Access 2007+ (the ACE engine) but most information holds true for earlier versions as well.


List of Microsoft Access Data Types

Types of Types

Officially, there are 13 primary data types in Microsoft Access. See SQL Data Types. There a number of subtypes, however, depending on how an individual field is configured. Some data types add behaviors or formatting, and others allow multiple values to be stored in the same field. Read more

What Microsoft Access is Good For

A lot of my posts here will be about how best to use Microsoft Access, from programming in VBA and Jet SQL to indexing and data application architecture.

For a lot of IT professionals the question this immediately raises is "Why?", as in "Why the heck would you ever use Access?" Searching for "Hate" and "Microsoft Access" yields plenty of results (of course "hate oracle" yields even more). From my first experience as a finance intern hacking VBA to get stuff done to later years both using and analyzing all the big boys of enterprise database development I went through my own cycle of disdain for Access. And yet I have come to firmly believe that Access has its place in the corporate IT landscape.

The most common defenses of Access (see Further reading below) revolve around low cost, quick development times, and ease of use for non-developers. These are all reasonable points and I leave it to the linked references to argue them. But two of the points that I think are most important are rarely highlighted, so I present them here.

Read more