Installing access with a user application

R

Rand Monroe

Hello,

We are currently developing an application in Delphi that will be sent to
users
and we are looking for a database that can be installed with the program on
a CD.
It needs to be pretty much transparent to the user. The plan is that after
the user
installs the program and database, the application will notify the user to
log onto
our website to populate his database with his needed data that is specific
to him.
We are looking for a database with a small footprint that has a seamless
install.
Can access provide this need.

Thank you,
Randy
 
I

Immanuel Sibero

Hi Rand,

Short answer is yes.


Long answer.
Generally, the term "Access" is used to refer to many components - Access,
VBA, Jet Engine. The combination of Access and VBA is really a development
tool comparable to Delphi. Jet is the engine that comes with "Access" to
manipulate mdb data files. So, strictly speaking an mdb file is a Jet data
file (not an Access file). For example, a Jet datafile (.mdb) is comparable
to a DBase file (.dbf). Both can be used as a "database" by any development
tool (i.e Delphi, Access/VBA, VB, etc.)

So, a Delphi developed application can certainly use a jet data file (.mdb)
the same way it uses a DBase or Interbase data file. Just make sure you
install the ODBC drivers for Jet data file (.mdb).

HTH,
Immanuel Sibero
 
A

Albert D. Kallal

I think when you say ms-access, you actually mean the embedded data engine
called "JET".

You might want to note that ms-access is simply a development tool. In fact,
sm-access is much like Delphi. You have a editor for code, a forms builder,
and can even create class objects in ms-access. So, when you refer to
ms-access, you are referring to a development platform. The programming
language in ms-access is in fact called VBA, but is the same as VB6.

Since you are using Delphi, then you don't need ms-access to develop the
code and forms (which is what ms-access is used for). Hence, you could just
use the JET data engine, and not bother with ms-access. I should probably
note that while Delphi also have a very nice development environment,, what
you are missing is a good report writer. So, the only reason to include
ms-access in addition to the data engine (JET) would be to have a good
report writer system

Anyway, you can most certainly use the JET data engine that ms-access uses.
And, you can use that engine in your projects without having to install, or
need ms-access.

So, when you develop software in ms-access, you have to choose the data
engine that you will use (on the office CD, for the last 3 versions, two
data engines have shipped for used with ms-access. The embed one is JET, and
then the other one is the desktop edition of sql server).

If you just need JET, the data engine, then you don't need ms-access. As far
as I know, if you have visual studio, then you can distribute JET freely
with your applications. And, JET is still downloadable from Microsoft. I
don't know the ins and outs of using JET with Delphi. (it certainly will
work, but I don't know if you can do this without licensing issues (don't
quote me...but as far as I know..you can do this freely).

We are looking for a database with a small footprint that has a seamless
install.
Can access provide this need.

Yes, JET can provide this need. As mentioned, you actually mean JET, and not
the programming and development tool called ms-access.
 
A

Albert D. Kallal

Do you even need JET, if you were to use ODBC?

Yes, you do. The reason here is that if you take a CLOSE look at the odbc
connection string, you MUST specify a full path name to the actual file.

In other words, to actually READ and OPEN a mdb file, you need the JET
engine installed on your pc. And, note how I said on YOUR pc. If you place
the mdb file on a shared folder on the server, you do not have to install
ANY SOFTWARE on the server for each client to open, and read the file (all
software to read the file MUST be installed on YOUR (the client) pc).

So, you MUST install JET on each workstation. So, the only provision that
has to be meet here is that in fact a full path name to the file can be
resolved from the client, but that client does need JET installed. It goes
like this:

odbc->JET->jet opens mdb file

Both the odbc, and the JET MUST be on your pc. The last part of "open mdb
file" means that the file does not have to be on your pc, but it has to be
standard windows file, and be freely able to be opened like any other file.

If you use a odbc connection to sql server, then you obviously don't need to
install JET. And, when you connect to a server based engine, you can
connection via a IP address (a socket connection). This is because the
software is RUNNING ON the server.

odbc ------> connect to sql server->sql server opens files on server.

In the above, the only part you need on your pc is the odbc driver..because
it is sql server that OPENS the files on the server!! (not your pc!).

With ms-access, you are still using a FILE OPEN system. So, that odbc
connection to a mdb file cannot occur across the internet unless you can
actually open the file on the other end across the internet!
 
Top