My Access Tips for Custom Microsoft Access

Application Development

by Matthew V Carmichael

Need Help?

My Tips



Deploying an Access Application over a Wide Area Network (WAN).

For deploying over a LAN click here.

To deploy updates over the Internet check out my Web Updater function.

The Microsoft Access Jet engine is a file-sharing mechanism which may result in a slower performance and increased network traffic. A Microsoft Access back-end (mdb) is not designed to work efficiently over a Wide Area Network (WAN).  In order to use an Access application is this situation, I suggest one the following.

Client/Server back-end

1 – Upsize the Microsoft Access back-end to Client/Server back-end (SQL Server).  If SQL Server is not available then consider converting the back-end to Oracle or mySQL and rewriting the front-end application.

           Developing Client/Server Solutions. More info...

           About upsizing a Microsoft Access database. More info...

Terminal Services

2 - Use a terminal server to host you r application.   This requires special licenses for each user, but this may prove to be an excellent solution.  Terminal Services provide efficient access to data over low bandwidth.

           Windows Server 2003 Terminal Services. More info...

Setting up and deploying in this environment is the same as it would be for a Local Area Network (LAN), with the exception of the local front-end.  Instead of copying the front-end to the user’s local PC, it would be copied to their Terminal services profile (my Documents).  Also, placing the database files (front-end and back-end) on the Terminal Server’s local hard drive instead of a network share will increase the applications performance.

View Article on Deploying a Microsoft Access Application over Terminal Services

Web front-end

3 – Finally the last solution would be to create a Web based front-end for your access database. This can be done using technology such as: asp, cold fusion, jsp, and php. 

I use the following technologies and software for my web site / database solutions:

My Experiences

What I consider to be one of the best features of Microsoft Access is the ability to upsize the application in the future.  Many of my applications start off as small ideas and grow into something more.  What started as a small project may eventually become a massive business critical application.  Using Microsoft Access as my development platform allows me to upsize the application to a Client/Server application when the time arises without having to completely rewrite the application.  Awesome! 

A terminal server solution works great if the client has remote sites or you need to increase the applications performance but are not quite at the upsizing stage.

Generally a developer would know whether or not they were creating a web front-end to a database before they started the project.  Realize a web interface is much more work for developers and users.  What I have found many times during development is that a client has information in a database that they want to display on a web site (such as member or phone listing).  I can easy create Active Server Pages to pull data from an access database.  Then I can create a function that exports data to an mdb file and uploads it to the web site (FTP function). Here are some of examples where I did just that.