The concept of FE/BE is to separate the code and control parts of a database solution from the design and storage of the data.
Benefits include :
Creating a FE/BE System from an Existing Database.
This will leave you with a new system where the FE is split from the BE but it should work the same as before apart from this.
Benefits include :
- Releasing new versions of the code / control (FE) can be done without having to manage the porting of the data.
- Multiple users are less of an issue if the data is stored in a BE database. It's even possible (many developers prefer this in fact) to release the FE database to each user as a local db.
Creating a FE/BE System from an Existing Database.
- We'll start off with the existing database (referred to as {A}) and create two new ones (referred to as {FE} and {BE}).
- To create the BE db we can use either of the following two methods :
- From {A}.
- Copy the {A} file as {BE} (using Windows Explorer or similar tool).
- Open {BE} in Access and delete all objects except the native tables (not the linked ones). This will include QueryDefs, Forms, Reports, Pages, Macros and Modules (as well as all the linked tables of course).
- From scratch. A disadvantage is that you will need to add various database properties and settings if you want them.
- Create a completely new database in Access and save it as {BE}.
- Use File / Get External Data / Import... from {BE} to import all of the native tables (and the relationships) from {A}.
- Now {A} becomes {FE}. I would create a copy at this point rather than simply renaming as you would benefit from a backout plan if things go wrong.
- Open {FE} in Access and delete each native table.
- Create links to all the tables in {BE} by using File / Get External Data / Link Tables....
- Link to {BE} and select all the tables.
NB. Anyone using {FE} will connect to {BE} using these links so the address must be correct for everyone. If {BE} is on the C: drive of the PC that you are doing the work on, do NOT link to it as C: unless you know that everyone will be using it from this PC exclusively. Otherwise anyone trying to use it from elsewhere will have trouble accessing {BE}. If this is the case, consider using a UNC path (\\ServerName\S hareName\...) to {BE} which should work from all networked PCs.
- Link to {BE} and select all the tables.
- From {A}.
This will leave you with a new system where the FE is split from the BE but it should work the same as before apart from this.
Comment