Abfragetimeout

Babsi

SQL-Guru
Beiträge
161
Hallo zusammen,

ich habe usnere altes Access Backend nach SQL Server migriert. Viele Views erstellt viel SP's.
Alles gut schon soweit.
Nun gibt es ein Fomrular, mit Kundendaten. Auf diesem sind etliche Felder, wenn ich nun diese Kundendaten bearbeite und das Form schließen will, bekomme ich die Fehlermeldung
Abfragetimeout überschritten.
Ich habe aus der zugrunde liegenden Tabelle(also das RS) schon eine Abfrage gemacht.
Leider ändert das auch nichts. Wo kann ich denn diesen Wert "Kommandotimeourt" im neuen Access ändern, wenn es denn überhaupt der Fehler ist.
 
Werbung:
Tja, die Frage wäre erstmal, wie Du das Update (Post) in Access machst.
Außerdem wäre die Frage, ob das gerade 1:1 auf die Originaltabelle aufsetzt oder ob Du dabei die erwähnten vielen Views und SP nutzt.
Falls du in dem Form Nachschlagewerte nutzt, die aufgrund eines lokalen Datenmodells in Access gebastelt wurden, wäre das auch interessant.
(Und ob die Frage nicht besser unter MSSQL platziert wäre... wird sich zeigen.)

Wenn Du beim Speichern Views und SP nutzt und diese nicht nur die reinen Kundendaten (Kundentabelle), sondern auch andere, abhängige, relationale Daten ändern, könnte es passieren, dass Du Zirkelbezüge da drin hast, die zu einem Deadlock führen oder eben erstmal einem Timeout ...

Ein einzelnes Update auf einen Datensatz, auch in einer riesigen Tabelle, sollte eigentlich "blitzschnell" gehen.

Soweit ich mich an MSSQL erinnere, ist auch das Sperrverhalten gerade in älteren Versionen problematisch bzw. "eskaliert" leicht, wenn Druck auf dem System ist. Aber das können die MSSQL Profis hier sicher besser erklären. Zumindest wäre vielleicht spannend, welche Serverversion du fährst, wieviel Transaktionen / Prozesse da (schreibend) drin hängen und wie ihr mit das Thema lock escalation angeht.
 
Ein einzelnes Update auf einen Datensatz, auch in einer riesigen Tabelle, sollte eigentlich "blitzschnell" gehen.
Genau, das sollte es. Es handelt sich um ein Formular, welches eine Accessabfrage als RS hat, das habe ich bereits gändert.
Es ist eine enzige Tabelle.
Das ist ales noch ein Testsystem, da arbeitet noch niemand drauf.
Serverversion ist 14.0.2025.1. Keine nachschlagefelder.
 
Werbung:
Es handelt sich um ein Formular, welches eine Accessabfrage als RS hat,
Wie lautet der Code für Updates? Oder geht es automatisch?
Die Tabellen sind vermutlich über ODBC verlinkt? Werden die Primärschlüssel erkannt? Und ist einer für die Tabelle definiert?

Serverversion ist 14....
Das ist jetzt wirklich nicht die neueste Version. Wenn Ihr große Datenmengen habt, ist es vermutlich hilfreich, die aktuelleste Version zu fahren, die (hoffentlich) auch am besten mit solchen Mengen klar kommt. (Neben anderen Gründen, aktuelle Versionen zu verwenden)
 
Zurück
Oben