Need JET 12 redistributable package

M

mikedempsey

I am looking for a redistributable package that allows me to
Create/Read/Write simple Access 2.0 - 2007 tables. [Only create 2003/2007,
but need to read older versions.]
I have used JET 4.0 for many years (To support Access 2.0 to 2003) but now
need to be able to create Access 2007 tables also.

I know I can use the 'Access 2007 Runtime' - but that is like cracking a nut
with a steamroller. (100MB and many system changes that includes screwing up
the 'mdb' file association if you happen to have Access2003 installed.)

I am not writing 'Access applications' - I just need to be able to read a
table and save spreadsheet data to an Access table. (No reports, macros,
graphs etc - just the base DB functions.)

I have already proved that this requires only the interop dll plus DAO and
the 6 JET/ACE dlls ... plus MSO.dll for no apparent reason. [An extra 17MB!]

Is such a package available?

Thanks
 
M

mikedempsey

Thanks, that will work.
It still installs 46MB of files but that is a lot smaller than the Access
Runtime - which also has 'logo and message' requirements. (It does not screw
up my file associations either.) However it is still way bigger than the
3.5MB for JET.

I noticed that the files installed by this package are a year older than
those installed by the Access Runtime, but I doubt that matters for the basic
fubnctionality I require.

FYI
The download page states that the appropriate replacement for JET is SQL
Server Express Edition. That is totally ridiculous. The correct replacement
for JET is SQL Server Compact Edition. CE is file based (like JET) whereas EE
is a server database. CE is also compact - 4MB - unlike EE.
(I dont think either one can create Access databases though... so neither
will be a replacement for JET in many apps.)

--
Mike Dempsey
Teradata Corporation


Chris O'C via AccessMonster.com said:
Sounds like you need the Office 2007 System Data Connectivity Components.
The free download is 25MB.

http://www.microsoft.com/downloads/...36-8C28-4598-9B72-EF94E038C891&displaylang=en


Chris
Microsoft MVP

I am looking for a redistributable package that allows me to
Create/Read/Write simple Access 2.0 - 2007 tables. [Only create 2003/2007,
but need to read older versions.]
I have used JET 4.0 for many years (To support Access 2.0 to 2003) but now
need to be able to create Access 2007 tables also.

I know I can use the 'Access 2007 Runtime' - but that is like cracking a nut
with a steamroller. (100MB and many system changes that includes screwing up
the 'mdb' file association if you happen to have Access2003 installed.)

I am not writing 'Access applications' - I just need to be able to read a
table and save spreadsheet data to an Access table. (No reports, macros,
graphs etc - just the base DB functions.)

I have already proved that this requires only the interop dll plus DAO and
the 6 JET/ACE dlls ... plus MSO.dll for no apparent reason. [An extra 17MB!]

Is such a package available?
 
M

mikedempsey

File size is not a major problem - I would just prefer to keep my packages
smaller.

The requirement is to be able to save report data to an Access 2007 table -
so JET 4.0 is no good. (I currently save to Access 2000 format which is the
highest version JET 4.0 supports)

--
Mike Dempsey
Teradata Corporation


mikedempsey said:
Thanks, that will work.
It still installs 46MB of files but that is a lot smaller than the Access
Runtime - which also has 'logo and message' requirements. (It does not screw
up my file associations either.) However it is still way bigger than the
3.5MB for JET.

I noticed that the files installed by this package are a year older than
those installed by the Access Runtime, but I doubt that matters for the basic
fubnctionality I require.

FYI
The download page states that the appropriate replacement for JET is SQL
Server Express Edition. That is totally ridiculous. The correct replacement
for JET is SQL Server Compact Edition. CE is file based (like JET) whereas EE
is a server database. CE is also compact - 4MB - unlike EE.
(I dont think either one can create Access databases though... so neither
will be a replacement for JET in many apps.)

--
Mike Dempsey
Teradata Corporation


Chris O'C via AccessMonster.com said:
Sounds like you need the Office 2007 System Data Connectivity Components.
The free download is 25MB.

http://www.microsoft.com/downloads/...36-8C28-4598-9B72-EF94E038C891&displaylang=en


Chris
Microsoft MVP

I am looking for a redistributable package that allows me to
Create/Read/Write simple Access 2.0 - 2007 tables. [Only create 2003/2007,
but need to read older versions.]
I have used JET 4.0 for many years (To support Access 2.0 to 2003) but now
need to be able to create Access 2007 tables also.

I know I can use the 'Access 2007 Runtime' - but that is like cracking a nut
with a steamroller. (100MB and many system changes that includes screwing up
the 'mdb' file association if you happen to have Access2003 installed.)

I am not writing 'Access applications' - I just need to be able to read a
table and save spreadsheet data to an Access table. (No reports, macros,
graphs etc - just the base DB functions.)

I have already proved that this requires only the interop dll plus DAO and
the 6 JET/ACE dlls ... plus MSO.dll for no apparent reason. [An extra 17MB!]

Is such a package available?
 
M

mikedempsey

I have version 3.60.9512.0 of DAO360.dll and the highest version it allows is
dbVersion40 ... which is Access 2000.
Since this has a value of 64 I tried using the value 128 (which is what ACE
uses for Access 2007) but it still creates an Access 2000 database...
probably because the property overrides an invalid value.

I checked the DllHelp database and the highest version listed there is
3.60.8618 so if there is a newer one than the one I have it is not listed.
(of course mine is not listed either.)

Even ACE exposes no dbVersion enums for 2002/3 only 2000 (dbVersion40) and
2007 (dbVersion120)

What version of DAO and JET are you using that allows you to create
databases versions greater than Access2000? (and where do I get it?)

(My JET files are version 4.0.9511.0 and 4.0.9502.0)
 
M

mikedempsey

I am not using Access at all.
(The DAO/JET files I am using are much newer than those from Access 2003
[which I have installed] but they still only allow creation of Access 2000
databases. Access 2003 itself can obviously create the 2003 format ... but
not through DAO.)
I am saving data to Access tables from within a .Net application.
I use DAO to create the database - and that supports only up to dbVersion40.

I had thought about using empty database 'templates' but unless things have
changed since the early days of Access, a database created in the US will
fail inserts that contain date strings if used in Japan, England, France,
etc. due to the different date formats used elsewhere. There are (or at least
were) also other locale specific settings that are set based on the current
locale when the database is first created.
(This app has been using DAO/JET for 15 years now)

Even if the locale problems no longer exist DAO tells me that the database
is invalid if I try to open an existing Access 2007 database. (This database
has an accdb filetype, but I think you implied earlier that there is also a
'native' Access 2007 mdb type. If so I was not aware of that. I have a
licence for Access 2007 ... but not the software (!) so I can't check it out
myself - I'm working with databases I was given.)

--
Mike Dempsey
Teradata Corporation


Chris O'C via AccessMonster.com said:
You're apparently using the wrong tool. Use a more recent version of Access
than 2000.

If you run the code below in Access it will create a new db file in the
default file format as set when the current db file was opened. (If you
change the setting you have to close the db and open it again to get the new
setting.) If you don't want to keep changing settings, you can create an
empty template db file in each format you need. Whenever you need a new db
you copy the template for the file format you want.

Public Function createNewDBFile()
On Error GoTo Proc_Err

Dim ws As Workspace
Dim db As Database
Dim strFileName As String

strFileName = "new.mdb"
Set ws = DBEngine.Workspaces(0)
Set db = ws.CreateDatabase(CurrentProject.Path & "\" & strFileName,
dbLangGeneral)

Proc_Exit:
db.Close
ws.Close
Set db = Nothing
Set ws = Nothing

Exit Function

Proc_Err:
MsgBox Err.Number & vbCrLf & Err.Description
Err.Clear
GoTo Proc_Exit
End Function


Chris
Microsoft MVP

I have version 3.60.9512.0 of DAO360.dll and the highest version it allows is
dbVersion40 ... which is Access 2000.
Since this has a value of 64 I tried using the value 128 (which is what ACE
uses for Access 2007) but it still creates an Access 2000 database...
probably because the property overrides an invalid value.

I checked the DllHelp database and the highest version listed there is
3.60.8618 so if there is a newer one than the one I have it is not listed.
(of course mine is not listed either.)

Even ACE exposes no dbVersion enums for 2002/3 only 2000 (dbVersion40) and
2007 (dbVersion120)

What version of DAO and JET are you using that allows you to create
databases versions greater than Access2000? (and where do I get it?)

(My JET files are version 4.0.9511.0 and 4.0.9502.0)
You've been misinformed. Jet 4 supports Access 2000, 2002, 2003 *AND* 2007.
All 4 of these versions can create Jet 4 mdb files. Access 2007 has the
[quoted text clipped - 10 lines]
so JET 4.0 is no good. (I currently save to Access 2000 format which is the
highest version JET 4.0 supports)
 
M

mikedempsey

Yes, the acedao.dll works fine.
It is just unfortunate that someone decided to link MSO.dll into it.
(That adds 17MB of unnecessary code to a 3.5 MB dll set)

The 'Access Database Engine' package you initially pointed me to does seem
to be the simplest option even though it is rather larger than necessary.

(I can't use Automation since most customers will not have Access installed.
Sometimes a customer without Access wants to create an Access table to send
to someone who does have it.)

--
Mike Dempsey
Teradata Corporation


Chris O'C via AccessMonster.com said:
Have you tried Automation with the Access application object from the .net
app? That might overcome the difficiencies you're finding with .net.

I think you need to use the acedao.dll for Access 2007 accdbs. The Access
2007 mdbs might need it too.

Chris
Microsoft MVP

I am not using Access at all.
(The DAO/JET files I am using are much newer than those from Access 2003
[which I have installed] but they still only allow creation of Access 2000
databases. Access 2003 itself can obviously create the 2003 format ... but
not through DAO.)
I am saving data to Access tables from within a .Net application.
I use DAO to create the database - and that supports only up to dbVersion40.

I had thought about using empty database 'templates' but unless things have
changed since the early days of Access, a database created in the US will
fail inserts that contain date strings if used in Japan, England, France,
etc. due to the different date formats used elsewhere. There are (or at least
were) also other locale specific settings that are set based on the current
locale when the database is first created.
(This app has been using DAO/JET for 15 years now)

Even if the locale problems no longer exist DAO tells me that the database
is invalid if I try to open an existing Access 2007 database. (This database
has an accdb filetype, but I think you implied earlier that there is also a
'native' Access 2007 mdb type. If so I was not aware of that. I have a
licence for Access 2007 ... but not the software (!) so I can't check it out
myself - I'm working with databases I was given.)
 
L

Larry Linson

You used to be able to download "the MDAC" (Microsoft Data Access
Components) with current versions of support for Jet databases (ACE is a
'descendant' of Jet), but Microsoft, in their wisdom, stopped updating the
MDAC for Jet. You are using the Jet database engine, and may want to use
the ACE (Access 2007-specific) database engine. I'd guess the best
information on using it with .NET would be one of the .NET newsgroups, as
this one is specifically targeted to Access itself, which you are not using.

If, by happenstance, there is someone here who uses Jet/ACE with .NET, I
hope they will jump in to this thread, but it will be happenstance, as that
isn't the topic here.

[Many | most] of my colleagues who do .NET now recommend using SQL Server
Express... which is a free download with good capability for individual and
small workgroup use.

Larry Linson
Microsoft Office Access MVP

mikedempsey said:
I am not using Access at all.
(The DAO/JET files I am using are much newer than those from Access 2003
[which I have installed] but they still only allow creation of Access 2000
databases. Access 2003 itself can obviously create the 2003 format ... but
not through DAO.)
I am saving data to Access tables from within a .Net application.
I use DAO to create the database - and that supports only up to
dbVersion40.

I had thought about using empty database 'templates' but unless things
have
changed since the early days of Access, a database created in the US will
fail inserts that contain date strings if used in Japan, England, France,
etc. due to the different date formats used elsewhere. There are (or at
least
were) also other locale specific settings that are set based on the
current
locale when the database is first created.
(This app has been using DAO/JET for 15 years now)

Even if the locale problems no longer exist DAO tells me that the database
is invalid if I try to open an existing Access 2007 database. (This
database
has an accdb filetype, but I think you implied earlier that there is also
a
'native' Access 2007 mdb type. If so I was not aware of that. I have a
licence for Access 2007 ... but not the software (!) so I can't check it
out
myself - I'm working with databases I was given.)

--
Mike Dempsey
Teradata Corporation


Chris O'C via AccessMonster.com said:
You're apparently using the wrong tool. Use a more recent version of
Access
than 2000.

If you run the code below in Access it will create a new db file in the
default file format as set when the current db file was opened. (If you
change the setting you have to close the db and open it again to get the
new
setting.) If you don't want to keep changing settings, you can create an
empty template db file in each format you need. Whenever you need a new
db
you copy the template for the file format you want.

Public Function createNewDBFile()
On Error GoTo Proc_Err

Dim ws As Workspace
Dim db As Database
Dim strFileName As String

strFileName = "new.mdb"
Set ws = DBEngine.Workspaces(0)
Set db = ws.CreateDatabase(CurrentProject.Path & "\" & strFileName,
dbLangGeneral)

Proc_Exit:
db.Close
ws.Close
Set db = Nothing
Set ws = Nothing

Exit Function

Proc_Err:
MsgBox Err.Number & vbCrLf & Err.Description
Err.Clear
GoTo Proc_Exit
End Function


Chris
Microsoft MVP

I have version 3.60.9512.0 of DAO360.dll and the highest version it
allows is
dbVersion40 ... which is Access 2000.
Since this has a value of 64 I tried using the value 128 (which is what
ACE
uses for Access 2007) but it still creates an Access 2000 database...
probably because the property overrides an invalid value.

I checked the DllHelp database and the highest version listed there is
3.60.8618 so if there is a newer one than the one I have it is not
listed.
(of course mine is not listed either.)

Even ACE exposes no dbVersion enums for 2002/3 only 2000 (dbVersion40)
and
2007 (dbVersion120)

What version of DAO and JET are you using that allows you to create
databases versions greater than Access2000? (and where do I get it?)

(My JET files are version 4.0.9511.0 and 4.0.9502.0)

You've been misinformed. Jet 4 supports Access 2000, 2002, 2003 *AND*
2007.
All 4 of these versions can create Jet 4 mdb files. Access 2007 has
the
[quoted text clipped - 10 lines]
so JET 4.0 is no good. (I currently save to Access 2000 format which
is the
highest version JET 4.0 supports)
 
D

David W. Fenton

Your subject heading is NONSENSICAL. Jet 12? It is to laugh.

Jet 4 was released with Access 2000. The next major update of the
Jet engine was the ACE, which was released with Access 2007. I call
it "Jet 5," but that's not an official name.

What you want is a redistributable ACE data engine.

Why you would want that, I don't know, as it seems unwise to me to
depend on such a new db engine that is so far available only with
full Access or the Access runtime. I can't imagine an app that would
be entirely dependent on features provided by the ACE that are
absent from Jet 4 (which ships with every version of Windows from
Windows 2000 on).
 

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

Top