Question toward the bottom of this post....backgro und information
immediately below.
Access 97
SQL Server 2000
Please note: although the subject line uses the word 'bloat', this
post is NOT a "what can I do to prevent bloat?" inquiry. When I
searched the postings in this group for information about bloat, I
believe I gained a rudimentary understanding of some of the things
that contribute to bloat. I recognize that my application is doing
something that contributes to bloat: it sets up a querydef at the
beginning of a session and then deletes that querydef at the end of
the session. The posts in this group suggest that over time, that
will cause bloat, and that seems to be consistent with what I've
observed.
My application (a reporting system) does the following:
1) at the beginning of a session, sets up a querydef
2) when a user requests a report the application sets up the querydef;
all of the information for all of the reports reside on a SQL Server
2000 database, so the querydef is a pass-thru query. The .SQL
property of the querydef is a string, the contents of which is a call
to a stored proc
3) the Access application calls the stored proc
4) the stored proc returns a result set
5) the Access application takes the result set and uses it as the
recordsource for an Access report object.
6) at the end of the session, the application 'cleans up', i.e. it
deletes the querydef that it established at the beginning of the
session
I recognize that this will, over time cause bloat, and that is, in
fact, consistent with with I've observed. When compacted the
application is about 8MB. Over time, it has grown to 20MB before I've
compacted it again. I'm guessing that if I hadn't compacted it, it
would have continued to accumulate bloat beyond the 20MB level. I
know for a fact that:
a) the application never adds/deletes/modifies records in any of the
Access tables
b) the application never creates/deletes temp tables
So, when one looks at the database window in the 8MB app, one sees the
same objects as when one looks at the database window in the 20MB
app.
So, finally, my questions...the y have a theme of 'where will I notice
the bad side effects?"
1) will it take longer to load the 20MB bloated app than it will to
load the 8MB compacted app?
2) will it take longer to a load form in the 20MB app than it will to
load the same form in the 8MB app?
3) will it take longer to load a report in the 20MB app than it will
to load the same report (with the same result set as recordsource) in
the 8MB app?
4) I understand that a 20MB bloated app occupies more space on disk,
but are there other negative side effects of having a bloated app?
5) Does everything run slower in a bloated app, or is the slow down
(if there is, in fact, a slow down) happen only when the application
is first loaded?
Thank you.
immediately below.
Access 97
SQL Server 2000
Please note: although the subject line uses the word 'bloat', this
post is NOT a "what can I do to prevent bloat?" inquiry. When I
searched the postings in this group for information about bloat, I
believe I gained a rudimentary understanding of some of the things
that contribute to bloat. I recognize that my application is doing
something that contributes to bloat: it sets up a querydef at the
beginning of a session and then deletes that querydef at the end of
the session. The posts in this group suggest that over time, that
will cause bloat, and that seems to be consistent with what I've
observed.
My application (a reporting system) does the following:
1) at the beginning of a session, sets up a querydef
2) when a user requests a report the application sets up the querydef;
all of the information for all of the reports reside on a SQL Server
2000 database, so the querydef is a pass-thru query. The .SQL
property of the querydef is a string, the contents of which is a call
to a stored proc
3) the Access application calls the stored proc
4) the stored proc returns a result set
5) the Access application takes the result set and uses it as the
recordsource for an Access report object.
6) at the end of the session, the application 'cleans up', i.e. it
deletes the querydef that it established at the beginning of the
session
I recognize that this will, over time cause bloat, and that is, in
fact, consistent with with I've observed. When compacted the
application is about 8MB. Over time, it has grown to 20MB before I've
compacted it again. I'm guessing that if I hadn't compacted it, it
would have continued to accumulate bloat beyond the 20MB level. I
know for a fact that:
a) the application never adds/deletes/modifies records in any of the
Access tables
b) the application never creates/deletes temp tables
So, when one looks at the database window in the 8MB app, one sees the
same objects as when one looks at the database window in the 20MB
app.
So, finally, my questions...the y have a theme of 'where will I notice
the bad side effects?"
1) will it take longer to load the 20MB bloated app than it will to
load the 8MB compacted app?
2) will it take longer to a load form in the 20MB app than it will to
load the same form in the 8MB app?
3) will it take longer to load a report in the 20MB app than it will
to load the same report (with the same result set as recordsource) in
the 8MB app?
4) I understand that a 20MB bloated app occupies more space on disk,
but are there other negative side effects of having a bloated app?
5) Does everything run slower in a bloated app, or is the slow down
(if there is, in fact, a slow down) happen only when the application
is first loaded?
Thank you.
Comment