Link to home
Start Free TrialLog in
Avatar of Joe Linder
Joe Linder

asked on

System Resources Exceeded - Query works in win 7 but NOT win 10

Hello, I have an Accounting access program I am upgrading to win 10. All the queries run except one that has a lot of Where parameter (5 of them).

I keep receiving the error "System resources exceeded".

I can not change the query due to the business requirements.

Any advice?
Avatar of Dale Fye
Dale Fye
Flag of United States of America image

Can you post the syntax of the query?  Maybe we can help you resolve it by streamlining the query?
Avatar of Joe Linder
Joe Linder

ASKER

SELECT Customers.Company, MotherTable.DispatchNo, MotherTable.BoxNo, MotherTable.ReferenceNo, MotherTable.XTownMoveDate, MotherTable.total
FROM MotherTable INNER JOIN Customers ON MotherTable.[Customer Number] = Customers.[Customer Number]
WHERE (((MotherTable.InvoicedConfirmed)=False) AND ((MotherTable.addtoinvoice)=False) AND ((MotherTable.OKToInvoice)=True) AND ((MotherTable.PrePaid)=False) AND ((MotherTable.MoveType) Like '*import*' Or (MotherTable.MoveType) Like '*export*'));
If I add a where date parameter, I can only use anything after  1 / 1 / 19. There should be no more than 500 records for that. It doesn't make sense.
Changing OS versions doesn't normally break Access (unless your version is very old).  It is more likely to result in total failures due to security changes.

Did you change the Access version?
Did you change the table definitions?  Sounds like a date field has now become a string.
Are you aware that Like "*xxx*" causes a full table scan.  It cannot use any indexes due to the leading wildcard.  If you don't need the leading wildcard, get rid if it.  Better yet, normalize the table so you don't have to do this type of wildcard search.
Basically it was an MS Access program that was made in 2003, then it was upgraded to work in 2007. Back end is still .mdb. I am opening it up in 2013 on win 10. Will get back to you concerning the **
I broke down the query to one field to show and one t/f.

Barely worked. It seems it crashes after 60,000 recrds.
It can only see to handle two where parameters
Think I found the problem. The table it was querying from (mothertable.mdb) had 15 indexes. I reduced it to one.
If you do a lot of querying of that table with where criteria on multiple fields, I may be to your advantage to add some of those indexes back in.  I generally index on ID fields (other than the PK, which is already indexed), date fields, and any other field that might be used in a query .
Indexes on fields that you use wild card searches on will not be used so don't add those back.

You should also compact the database after doing any maintenance.

Why are you still using .mdb format for the BE?
We have not to that part of the conversion yet. But even with just one index I am still running into that problem. Any ideas?
The table has over 500,000 records. Is this the cause?
Although your query is not that complex probably there is some kind of corruption that is causing the issue...i will throw another idea..."break" the query into "smaller" ones and create a temp table and query on it (the temp)
If there is an issue in the creation of the temp the error should pop up.
Well here is another issue. This query works in win 7. Run it in win 10 and it crashes. Any ideas?
Well something else is causing the problem...Windows 7/10 are quite similar as Oses so it would be "an amazing" bug to have something working in Win7 and not Win10 ...regarding that we are operating to such high Level..(we are not talking about apps accessing low level APIs calls)...
I reckon that something "extra" is causing the issue...start with the usual
Network , how each workstation is connected
Network , ping the server continuously (ping -t servername) and check ...ping should always report <1 ms ...anything else means troubles
Antivirus and other security software
Regional Settings
Lastly create a simple VBA method that iterates the query...(rst , while not .eof...movenext) and check if this works ..if not post back the error.
This question needs an answer!
Become an EE member today
7 DAY FREE TRIAL
Members can start a 7-Day Free trial then enjoy unlimited access to the platform.
View membership options
or
Learn why we charge membership fees
We get it - no one likes a content blocker. Take one extra minute and find out why we block content.