Thanks for this Krandor.
Quote:
Originally Posted by Krandor
Let me see if I understand you correctly.
You have data in your Access database that you push to an Access table which is then linked to SQL Server table. This table is the one that is giving you headaches.
Fundamentally yes. Though my original Access data grab is from a separate ODBC link.
Quote:
Originally Posted by Krandor
I’ve been doing Access/SQL Server combinations since ’94 (yes I’m ancient). In all that time, I have seen very few instances where it was better to do the processing on the Access side rather than the SQL Server side.
Well, you won't be able to say that any more (I suppose technically one extra instance doesn't stop it still being very few) :D
In my case, it now seems clear that the SQL server was suffering from space restriction problems.
In essence though, what my process is doing is determining the list of accounts that need to be processed by the generally more powerful SQL Server. It was so unwell last week though, that it was unable even to take the list of accounts into the table.
I was ideally hoping for some SQL Server tips on which DBCC commands may help either to determine problems or to fix them (not from the Access experts so much of course).
Quote:
Originally Posted by Krandor
I usually use Access only as the front end where the user enters or manipulates the data. That data (or the changes) are then posted to the SQL Server database either through stored procedures or by directly affecting the tables.
This I accomplish through ADO connections only.
Apart from using connections to move the data (I explain earlier why I'm not a great fan of that approach), this is fundamentally how I'm working too.
Quote:
Originally Posted by Krandor
Access has multi user issues when tables are tied directly to forms/screens. The first person to a screen can do edits, the second (or later) cannot.
And finally, Access apps that store the data in Access tend to start slowing down a lot after about 10 concurrent users. Store the data (and manipulate it) in SQL Server and that problem goes away.
I haven't been doing even Access work that long (late nineties properly) and SQL Server only since the mid noughties (4 or 5 years).
Much of my design started before SQL Server even came into the picture for me, and I wasn't about to
fix a design that was working quite well thank you. I work in a commercial environment anyway, so even if I'd wanted to, I doubt it would have been sanctioned. That all said, I'm sure if I were to do it again I would work along lines more similar to what you suggest. I get that the points make sense (although they hardly effect my situation at all as it happens).
It should be pointed out though, that the delays you refer to only effect databases which store the data internally. A similar setup to a SQL Server linked table, but with Access as a back-end instead, doesn't suffer from these problems. Don't get me wrong. SQL Server is a faster and more powerful engine, but these specific problems are design related in Access rather than engine related.
Quote:
Originally Posted by Krandor
Sorry for the long rant. I don’t know if this helps you, but it could help someone later who stumbles across this thread.
Not at all. As you quite rightly say, even if it doesn't pertain directly to my problem, it may well help others looking for answers in a similar area.
PS. Just reread the last paragraph and wanted to clarify I was not trying to suggest this was not on topic. It was a perfectly valid attempt to assist with the problem, and shed light on matters surrounding it.