front end/back end

N

NAS

I am fairly new to Access and I keep seeing posts about front end and back
end databases. Can someone please explain the difference or point me to a
good source that can? Thanks..
 
G

golfinray

On a network with multiple users, you usually would like to set an FE and BE.
The BE is on your network drive (F: or whatever) and the FE is on each user's
machine. All the tables are on the BE and each user's forms and reports are
on their FE.
 
N

NAS

I'm a little confused. So then the database's forms arent on the BE? And the
tables arent on the FE?
 
K

Klatuu

Front End, Back End refers to the two parts of an Access application. In
reality, the Front End (FE) is the application. It contains all the form,
report, macro, query, and VBA module objects. It may or may not have any
tables. In most cases, it will not contain tables, but there are times in a
multi-user environment when you need to use a temporary table that is unique
to the user. A FE can attach to multiple data sources. Jet (Access BE), SQL
Server, Oracle, DB2, Excel, MySQL, etc. You can even connect to and use
multiple data sources in the same application. It is not uncommon to use Jet
and SQL Server data at the same time.

A Back End (BE) is a data source for applications. It contains table,
Index, and relationship objects. It is nothing more than a bucket of data.
It should not have any other objects in it.

For connecting a FE application to a BE database, you use Linked Tables.
The FE doesn't store the data, it only maintains a reference to where each
table is located. Just as a side note, when using Linked Tables it is best
to use UNC paths.

UNC paths use the names of servers and the folders on the servers. For
example:
\\ServerName\FolderName\SubFolderName\MyGreatApp.mdb

Using a Drive Map path is not advisable because it is possible not all users
will have the same drive letter mapped to the same drive or folder. For
example, the UNC path used previously, here are a few different ways it could
be set up:

G:\FolderName\SubFolderName\MyGreatApp.mdb
Z:\FolderName\SubFolderName\MyGreatApp.mdb
P:\MyGreatApp.mdb
M:\SubFolderName\MyGreatApp.mdb

When you distribute your FE, it will have the mapping as you set it for
production, which will also be set differently for development and testing.
In many places, there are three set ups. Development, QA Testing,
Production. It is much easier to just set the UNC path for each environment
rather than have to worry about what mapping each user has.

Regardless of whether an application is single or multi user, it is always
best to split the database. When you have an unsplit database it becomes
difficult to install modifications and updates because you have to migrate
the data each time you do an update. Using a split database, you need only
to replace the existing version of the FE. It also is safer because
corruption can happen. It can happen in the BE, but most often occurs in the
FE. If an FE becomes corrupt, you have not lost any data, you just replace
the bad FE with a good copy. If an unsplit database or a BE becomes
corrupted, you can loose data. Of course, good backups help, but there is a
good chance you would have to recreate lost data.

Most importantly, the correct configuration for an Access application is to
have the BE located on a server folcer where all users have full rights. The
key is full rights because it is necessary to be able to create, delete, and
modify files. Each time a user opens the database, an ldb file is created if
it doesn't already exist, or modified if it does. The ldb file is necessary
for record locking.

Each user should have a copy of the FE on their desk top. Sharing a FE is
the most likely way to get corruption. It also reduces performance. It is
not an issue updating the FE for users. There are FE updater utilities
available at no charge you can incorporate into your application or a very
simple way is to use a bat file to copy the FE onto the user's computer.

I have used the bat file and found it to be a good way to do it. You put a
master copy in a folder on the server. The bat file first deletes the FE on
the user's computer, copies the master copy from the server to the user's
computer, then starts the application. It is faster than it sounds, and one
big advantage is there is never any bloat because each time the user opens
the application, they have a brand new copy. So when you update you
application, you just put a copy of the new version in the folder for the bat
file to copy.
 
N

NAS

Hmm I think I understand now. I was just confused because I figured this was
something that everyone did, however my office only uses FE. Thank you both
for your help.
 
J

Jeff Boyce

Front-ends don't exist without back-ends. The forms/queries/reports/etc.
HAVE to have data to work with somewhere...

Regards

Jeff Boyce
Microsoft Access MVP
 
J

Jeff Boyce

Here's an analogy ...

MS Word is like a bookcase. Most folks work with bookcases every day and
understand how to put books on and take books off (and they work with words
most days, and understand how to add words and remove words).

MS Access is like a table saw ... it is NOT a bookcase, but you can use it
to build a bookcase.

Good luck (and remember your safety goggles)

Regards

Jeff Boyce
Microsoft Access MVP
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Similar Threads


Top