MDE not possible ?

  • Thread starter Thread starter Rob Hofkens
  • Start date Start date
R

Rob Hofkens

Hello eveyone.

First, I know little about a MDE but I think its a database that has
compiled VB code and it runs faster ?
Maybe I am totaly wrong about this but someone might explain a bit more.

Second, I have a Access 2003 front end and a SQL2000 Server back end.
When I try to create a MDE I get an error about the "file format from the
used database" (translated from dutch) .
The error window suggests to convert the data ??
Is this normal with my setup ?

Thanx in advance.

Rob.
 
The default file format for Access 2003 is actually the Access 2000 file
format. If your database is in Access 2000 file format (it should say on the
database window), Access 2003 cannot convert it to an MDE: you must convert
the file format first. To convert to the new file format, look under Tools |
Database Utilities.

You can also change the default file format under Tools | Options, but that
will only affect any databases you create ongoing.
 
Rob,

An .mde is a file format which (a) does not contain any source code,
only the compiled one, and (b) does not allow access to the design of
forms and reports (at least in theory). It is meant for protecting an
application from prying eyes and user manipulation... I don't think it
actually runs any faster than the original .mdb though.

The error message you get is most likely because you are trying to make
an .mde out of an Access 2000 format .mdb, using Access 2002/3. You must
first convert the .mdb to the newer format (Tools > Database Utilitites
Convert Database > To Access 2002 - 2003 file format), and then
create the .mde.

If you still get an error, then you most likely have an error in the
code (if any); open the VBA Editor and run menu item Debug > Compile
[YourDatbaseName], which will highlight the first code error found; fix
and repeat until no error is found, then you wil be able to make the .mde.

HTH,
Nikos
 
Thank you for the reply it's most usefull !

Rob.

Nikos Yannacopoulos said:
Rob,

An .mde is a file format which (a) does not contain any source code, only
the compiled one, and (b) does not allow access to the design of forms and
reports (at least in theory). It is meant for protecting an application
from prying eyes and user manipulation... I don't think it actually runs
any faster than the original .mdb though.

The error message you get is most likely because you are trying to make an
.mde out of an Access 2000 format .mdb, using Access 2002/3. You must
first convert the .mdb to the newer format (Tools > Database Utilitites
Convert Database > To Access 2002 - 2003 file format), and then
create the .mde.

If you still get an error, then you most likely have an error in the code
(if any); open the VBA Editor and run menu item Debug > Compile
[YourDatbaseName], which will highlight the first code error found; fix
and repeat until no error is found, then you wil be able to make the .mde.

HTH,
Nikos
 
Hi again,

I converted my frontend MDB to the Access 2002-2003 format and tried to
create a MDE.
I get an error that the MDE couldn't be created.
Since I havea dutch Access version the error is also in dutch so I try to
translate it best I can:
My database consists of 4 linked tables to the SQL server and has less then
20 forms, modules and queries.
The MDB is about 2 mb in size.

Error message when creating the MDE:

This error occurse mostly while compiling big databases to a MDE file.
Because of the methode used to compile the database a lot of references will
be created to table-ID's for every table. The MS Jet engine alows maximum of
2048 open table-ID's at one time.
If there is a large number of tables, forms, modules and reports this could
exceed the limit during compiling.

Dutch version :
Deze fout heeft meestal te maken met het compileren van een grote database
naar een MDE-bestand. Vanwege de methode die wordt gebruikt voor het
compileren van de database, wordt er een aanzienlijk aantal verwijzingen
naar tabel-id's gemaakt voor iedere tabel. De Microsoft Jet Database Engine
versie 4.0 kan maximaal 2048 open tabel-id's per keer maken. Als de
database een groot aantal objecten bevat (tabellen, macro's, formulieren,
rapporten, etc.) en als MDE-bestand wordt geëxporteerd, kan deze limiet
worden overschreden.

Er bestaat geen nauwkeurige methode voor het schatten van het aantal
tabel-id's dat wordt gebruikt door de Jet Database Engine tijdens het
compileren van een database als een MDE. Elke VBA-module en elk formulier
maakt echter gebruik van een tabel-id. Als een database dus 500 formulieren
bevat en de eigenschap HasModule van elk formulier is ingesteld op Ja,
worden er wel 1000 tabel-id's gebruikt.
 
Oops *blushes*

Note to myself:
First compile the MDB and make sure that there are no errors in the code
before creating the MDE.

The error message I got is a bit weird tho :)

Mission accomplished.

Rob.
 
Rob,

There is indeed a limit on the number of objects, but it would not be
expected to be reached until you get to at least several hundred objects
in your .mdb - which is far from being your case... this is the (by far)
less frequent out of the two reasons, which is why I didn't bother
mentioning in my previous post. Your problem is the one I mentioned
(errors in code - see previous post for how to deal with it), and this
is not the only known case when an Office product produces a misleading
error message!

HTH,
Nikos
 

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


Back
Top