C
cpnet
I've discovered a serious problem in my application. My app uses an MS
Access ('97) format database to process some data for reports. I have a lot
of queries of queries of queries etc. My report database actually links to
tables in a 'real' Access database so that I don't change the 'real'
database for the sake of some reports.
Anyway, I have a query called, "baseQuery".
I've also run the following SQL:
SELECT * INTO baseTable FROM baseQuery
As a result of running this command baseQuery and baseTable both have the
exact same data.
I also have finalQuery, which is a query that looks at baseData (baseData is
expected to be a table/view in the exact format of baseQuery and baseTable).
By renaming baseQuery, or baseTable to "baseData", I can run finalQuery on
either the table or query version of the baseQuery data - without changing
finalQuery. The results of finalQuery should be identical in either case.
However, I'm finding that when finalQuery is working on baseQuery,
finalQuery returns 26 rows. When finalQuery runs on baseTable, I get 400
rows!!!
I'm getting no warnings or errors or any other indication that there's a
problem. I've tired this on a fully patched XP Pro machine, and 2 fully
patched Win98 SE machines.
This also seems dependent on the complexity of baseQuery. When baseQuery
involves fewer joins, and I persist the data to baseTable, I see that
finalQuery will return the same result set whether working with equivalent
source data from a table or query.
Access ('97) format database to process some data for reports. I have a lot
of queries of queries of queries etc. My report database actually links to
tables in a 'real' Access database so that I don't change the 'real'
database for the sake of some reports.
Anyway, I have a query called, "baseQuery".
I've also run the following SQL:
SELECT * INTO baseTable FROM baseQuery
As a result of running this command baseQuery and baseTable both have the
exact same data.
I also have finalQuery, which is a query that looks at baseData (baseData is
expected to be a table/view in the exact format of baseQuery and baseTable).
By renaming baseQuery, or baseTable to "baseData", I can run finalQuery on
either the table or query version of the baseQuery data - without changing
finalQuery. The results of finalQuery should be identical in either case.
However, I'm finding that when finalQuery is working on baseQuery,
finalQuery returns 26 rows. When finalQuery runs on baseTable, I get 400
rows!!!
I'm getting no warnings or errors or any other indication that there's a
problem. I've tired this on a fully patched XP Pro machine, and 2 fully
patched Win98 SE machines.
This also seems dependent on the complexity of baseQuery. When baseQuery
involves fewer joins, and I persist the data to baseTable, I see that
finalQuery will return the same result set whether working with equivalent
source data from a table or query.