ID aus SQL Recordset ermitteln - Geänderter Treiber?

PapaMaik

Benutzer
Beiträge
5
Ich habe ein akutes Problem beim Zugriff auf den SQL Server. Seit vielen Jahren nutze ich folgendes Prinzip.

Im VBA lege ich einen neuen Datensatz in einem Recordset an. Da der SQL Server die ID ja erst nach dem Speichern vergibt mache ich folgendes.

Code ist natürlich verkürzt
...
...

tb.update

tb.movelast

vID = tb![ID]

Seit ein paar Tagen reagiert das Access / SQL nun anders und ich bekomme nun bei dem unveränderten Code eine Fehlermeldung "Datensatz ist gelöscht".

Die Fehlerursache besteht nun darin, das der Recordset nicht den neu angelegten Datensatz beinhaltet. Setze ich nun ein

tb.requery

vor die Zeile

vID = tb![ID]

so klappt es problemlos.

Nun kommt die Frage, hat sich der ODBC Treiber oder irgendetwas anderes geändert? Warum geht der Code, der seit Jahren läuft nun plötzlich nicht mehr?

Natürlich weiß ich, daß ich tausend andere Möglichkeiten hätte vorzugehen, ich muß aber wissen warum der unveränderte Code nun plötzlich nicht mehr funktioniert.

Vielen Dank für Eure Ideen!

cu Maik
 
Werbung:
Zurück
Oben