473,414 Members | 1,729 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,414 software developers and data experts.

Access 2002 vs Access 97 Performance

Rob
Scenario:

O/S: Win XP Professional
Back-end: Access 2002 on network server

I have an Access 97 application, in production on our network, that
takes appoximately 5 minutes to process monthly data. I find this
tolerable.

The Access 2002 test version, on the network, takes approximately 50
minutes to accomplish the same thing. I find this intolerable.

I copied the Access 2002 version's front and back-ends to my C: drive
and it took approximately 4 minutes to process the data.

Why would the network version of Access 97 take 5 minutes versus 50
minutes for Access 2002? Why would the network version of Access 2002
take 50 minutes versus 4 minutes for the local version of Access 2002?

There appears to be two issues here.
1. Access 97 performs a lot better over my existing network than
Access 2002 for some unknown reason.
2. There is a network issue with Access 2002 compared to the local
version of Access 2002, although I don't know what the root cause
might be.

We are converting all of our existing Access 97 databases to Access
2002. I've just started to accomplish this and I am very concerned
about the poor performance issues that I am seeing. Am I going to
always see a performance hit when converting databases to Access 2002?

I've tried compacting the database, with no improvement. I've looked
at other postings regarding performance issues and most of the things
mentioned I've looked into or don't pertain to this application.

Any ideas would certainly be appreciated.

Thanks!
Nov 12 '05 #1
9 2860
I would have loved to see the numbers for access 97 local also?

That way, you could eliminate the network...and see if a2002 can perform ok?
By not testing access97 locally, then you don't know if a97 is slower, or
faster then a2002 on your local system? You see, if a2002 performs the same
as a97 local.....then likely you can return a2002 performance back to a97
levels. Perhaps a97 takes only 1 minute locally?

There are few things about a2002 that will run slower (on the other hand, I
been playing with computers for 20 years. Even when I had my first appleII,
I can't EVER remember purchasing new software that did not take more disk
space, more memory, simply required more resources? (can you think of ANY
software you EVER purchased that ran better, and faster then the previous
version..and used less of anything? I can't think of anything in the last 20
years that has broke this experience of mine!). Perhaps you are new to
computers, or never purchased or used new software?

However, there are a few things to check. (in fact, quite a few..since a2002
is 2 versions later then a97).

First, queries with User defined functions can run a LOT slower. Try and
avoid any VB function in a query. (this is a change in a2000 and later).

The world is now a big place..and acess2000 and later uses uni-code to
support international languages (text). That means for each character stored
in the database...two characters are stored. All of office when to uni-code
in office 2000, with the exception of Outlook..which finally made the change
for a2003.

This means that as a general rule...files are larger in a2000 and later
(larger files = larger load on system).

The other thing to check/change is things link track name auto correct (you
REALLY want to turn this feature off!), and also try the trick of keeping
the back end opened during this processing loop. So, when you load the front
end...simply open a connection to some table in the back end..and KEEP this
connection open. I would also test as a mde....

Now run your stuff..it should run on par with a97.

The list of performance got-ya's..and stuff like the "keep connection" open
trick and how to get your performance back can be found here:

http://www.granite.ab.ca/access/performancefaq.htm
--
Albert D. Kallal (Access MVP)
Edmonton, Alberta Canada
pl*****************@msn.com
http://www.attcanada.net/~kallal.msn
Nov 12 '05 #2
ro***********@mpls.frb.org (Rob) wrote in
news:9b**************************@posting.google.c om:
Why would the network version of Access 97 take 5 minutes versus
50 minutes for Access 2002? Why would the network version of
Access 2002 take 50 minutes versus 4 minutes for the local version
of Access 2002?


Did you delete the table links in the A2K2 front end and recreate
them afresh?

Were you running the A2K2 version against an A2K2/A2K back end, or
the same A97 back end?

Did you set the SubDatasheet property of your tables to [NONE]?

When you converted, did you make sure that no excess references were
added?

Was your conversion a conversion, or did you import the A97 objects
into a newly-created A2K2 MDB?

--
David W. Fenton http://www.bway.net/~dfenton
dfenton at bway dot net http://www.bway.net/~dfassoc
Nov 12 '05 #3
"Albert D. Kallal" <Pl*******************@msn.com> wrote in
news:05Nqc.506825$Pk3.289512@pd7tw1no:
also try the trick of keeping
the back end opened during this processing loop. So, when you load
the front end...simply open a connection to some table in the back
end..and KEEP this connection open.


That makes absolutely no sense for a process that's running, unless
that process is repeatedly resetting the db variable and recreating
it.

Actually, now that you mention it, perhaps that's what's happening.

And, BTW, given that the slowdown that this trick is supposed to fix
is caused by the creation/deletion/creation of the LDB file, all you
really have to do is initialize a reference to the back end database
-- you don't actually have to open a recordset.

--
David W. Fenton http://www.bway.net/~dfenton
dfenton at bway dot net http://www.bway.net/~dfassoc
Nov 12 '05 #4
"David W. Fenton" <dX********@bway.net.invalid> wrote:
Did you set the SubDatasheet property of your tables to [NONE]?


I suspect this would make the biggest difference.

Tony
--
Tony Toews, Microsoft Access MVP
Please respond only in the newsgroups so that others can
read the entire thread of messages.
Microsoft Access Links, Hints, Tips & Accounting Systems at
http://www.granite.ab.ca/accsmstr.htm
Nov 12 '05 #5
Rob
"Albert D. Kallal" <Pl*******************@msn.com> wrote in message news:<05Nqc.506825$Pk3.289512@pd7tw1no>...
I would have loved to see the numbers for access 97 local also?

That way, you could eliminate the network...and see if a2002 can perform ok?
By not testing access97 locally, then you don't know if a97 is slower, or
faster then a2002 on your local system? You see, if a2002 performs the same
as a97 local.....then likely you can return a2002 performance back to a97
levels. Perhaps a97 takes only 1 minute locally?

There are few things about a2002 that will run slower (on the other hand, I
been playing with computers for 20 years. Even when I had my first appleII,
I can't EVER remember purchasing new software that did not take more disk
space, more memory, simply required more resources? (can you think of ANY
software you EVER purchased that ran better, and faster then the previous
version..and used less of anything? I can't think of anything in the last 20
years that has broke this experience of mine!). Perhaps you are new to
computers, or never purchased or used new software?

However, there are a few things to check. (in fact, quite a few..since a2002
is 2 versions later then a97).

First, queries with User defined functions can run a LOT slower. Try and
avoid any VB function in a query. (this is a change in a2000 and later).

The world is now a big place..and acess2000 and later uses uni-code to
support international languages (text). That means for each character stored
in the database...two characters are stored. All of office when to uni-code
in office 2000, with the exception of Outlook..which finally made the change
for a2003.

This means that as a general rule...files are larger in a2000 and later
(larger files = larger load on system).

The other thing to check/change is things link track name auto correct (you
REALLY want to turn this feature off!), and also try the trick of keeping
the back end opened during this processing loop. So, when you load the front
end...simply open a connection to some table in the back end..and KEEP this
connection open. I would also test as a mde....

Now run your stuff..it should run on par with a97.

The list of performance got-ya's..and stuff like the "keep connection" open
trick and how to get your performance back can be found here:

http://www.granite.ab.ca/access/performancefaq.htm

Albert,

Thanks for the tips.

On your link, you mention: 'sub datasheet Name property set to [Auto]
should be [None]' I'm new to Access 2002 and not familiar with how to
set this. Can you point me in the correct direction?

Thanks again.
Nov 12 '05 #6
ro***********@mpls.frb.org (Rob) wrote:
On your link, you mention: 'sub datasheet Name property set to [Auto]
should be [None]' I'm new to Access 2002 and not familiar with how to
set this. Can you point me in the correct direction?


If you go down that page a bit you'll see a section titled "Sub Datasheet Name
property set to [Auto]" with a link to a Microsoft KB article with the necessary
code.

Tony
--
Tony Toews, Microsoft Access MVP
Please respond only in the newsgroups so that others can
read the entire thread of messages.
Microsoft Access Links, Hints, Tips & Accounting Systems at
http://www.granite.ab.ca/accsmstr.htm
Nov 12 '05 #7
> And, BTW, given that the slowdown that this trick is supposed to fix
is caused by the creation/deletion/creation of the LDB file, all you
FWIW, there are two separate problems that some times occur:
1) LDB file problem (common)
2) Network speed problem. (uncommon)

LDB file create/deletion problem is 'solved' by keeping a db connection
open.

However, on slow networks (or of course on very badly designed code)
you can sometimes see the overhead of just loading/locking tables,
and if this is the case, opening all of your tables can help.

Of course it also adds lot's of locks, which can cause other problems.

(david)
"David W. Fenton" <dX********@bway.net.invalid> wrote in message
news:Xn**********************************@24.168.1 28.78... "Albert D. Kallal" <Pl*******************@msn.com> wrote in
news:05Nqc.506825$Pk3.289512@pd7tw1no:
also try the trick of keeping
the back end opened during this processing loop. So, when you load
the front end...simply open a connection to some table in the back
end..and KEEP this connection open.


That makes absolutely no sense for a process that's running, unless
that process is repeatedly resetting the db variable and recreating
it.

Actually, now that you mention it, perhaps that's what's happening.

And, BTW, given that the slowdown that this trick is supposed to fix
is caused by the creation/deletion/creation of the LDB file, all you
really have to do is initialize a reference to the back end database
-- you don't actually have to open a recordset.

--
David W. Fenton http://www.bway.net/~dfenton
dfenton at bway dot net http://www.bway.net/~dfassoc

Nov 12 '05 #8
Rob
One other thing you might try, that I have found EXTREMELY relevant
when moving from 97 to either 2000 or 2002.

2000 and 2002 by default have the option "Track Name autocorrect info"
set to ON. (Under Tools/Options/General)

Access 97 did not have this option. It COULD be that your 2002
databases have this set to ON which CAN degrade performance
significantly, depending on how much manipulation your app is doing to
queries and form recordsets.

A particular application I had went from a 10 second opening running
Access 97 on a pentium II 266MHz to a 1-2 minute opening running
Access 2000 on a Pentium III when all we did was convert the Access97
application to Access 2002.

Try it and see if it impacts.
Good luck,
Rob
Nov 13 '05 #9
si****@ensco.com (Rob) wrote in
news:bd*************************@posting.google.co m:
A particular application I had went from a 10 second opening
running Access 97 on a pentium II 266MHz to a 1-2 minute opening
running Access 2000 on a Pentium III when all we did was convert
the Access97 application to Access 2002.


My first A2K app did this when moved from the development to the
production environment. Michael Kaplan suggested deleting and
recreating the table links in the production environment (instead of
updating the CONNECT string on the table links), and this corrected
the problem. Michael explained that A2K caches more information
about the back end in table links than previous versions of Access,
and this data is not updated when the CONNECT string is changed,
resulting in non-optimal performance.

So, your situation might have been related.

--
David W. Fenton http://www.bway.net/~dfenton
dfenton at bway dot net http://www.bway.net/~dfassoc
Nov 13 '05 #10

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

20
by: John | last post by:
Hi, I've recently upgraded from Access 97 to Access 2002 & the performance basically stinks. I have tried the following items listed below but it has only had a minor impact: 1) Upgraded Jet...
3
by: Stickleback | last post by:
Morning All I have been developing and deploying with Office 2000 for about 3 years, mainly Access based programs and although I have gotten used to it's quirks, I am starting to feel that I...
7
by: JMCN | last post by:
Is this possible to have the 97 users with 97 front end, 2000 users with 2000 front end, 2002 users with 2002 front end, and 2003 users with 2003 front end all linked up to an access 97 backend? ...
28
by: Neil Ginsberg | last post by:
I have a client who is using Access 2002/2000 (the database itself is written in 2000), and is considering migrating to Access 2003. Any recommendations on whether Access 2003 is worth the migrate,...
2
by: Roald Oines | last post by:
Hi, I'm working on converting several of my Access 97 databases to Access 2002 format (the company's changing from NT 4 to XP and updating Office at the same time), and this one has me stumped....
8
by: David Kistner | last post by:
I'm fairly new to Access (I've worked with Oracle and MySQL in the past). I was asked to build an application for a small office and told that I had to use Access 2002. I was VERY uncomfortable...
17
by: DaveG | last post by:
Hi all I am planning on writing a stock and accounts program for the family business, I understand this is likely to take close to 2 years to accomplish. The stock is likely to run into over a...
3
by: Michael | last post by:
I work with a highly programmed Access database (some 15,000 lines of VBA code, much of it automating data entry on forms -- and believe me, it's very tight code). In Access 97, 2000, 2002, and...
5
by: John | last post by:
I have an ASP.NET 2.0 application developed in VB.net, that accesses an Microsoft Access database. When the database is on the same IIS server all works just fine. BUT when it tried to access the...
0
BarryA
by: BarryA | last post by:
What are the essential steps and strategies outlined in the Data Structures and Algorithms (DSA) roadmap for aspiring data scientists? How can individuals effectively utilize this roadmap to progress...
1
by: nemocccc | last post by:
hello, everyone, I want to develop a software for my android phone for daily needs, any suggestions?
0
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However,...
0
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers,...
0
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows...
0
tracyyun
by: tracyyun | last post by:
Dear forum friends, With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each...
0
agi2029
by: agi2029 | last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing,...
0
isladogs
by: isladogs | last post by:
The next Access Europe User Group meeting will be on Wednesday 1 May 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM). In this session, we are pleased to welcome a new...
0
by: conductexam | last post by:
I have .net C# application in which I am extracting data from word file and save it in database particularly. To store word all data as it is I am converting the whole word file firstly in HTML and...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.