Fragensteller
ID aus SQL Recordset ermitteln - Geänderter Treiber?

Allgemeine Diskussion
-
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 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
- Typ geändert Ivan DragovMicrosoft contingent staff, Moderator Mittwoch, 5. Februar 2020 07:03 Keine Rückmeldung
Alle Antworten
-
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.
Evgenij Smirnov
-
Hi,
für andere User wäre es sehr hilfreich zu wissen, welche Update genau es war.
Dein Link ist leider so verkürzt, dass sich das entsprechende Update daraus nicht mehr ableiten lässt.
Gruß, Stefan
Microsoft MVP - Visual Developer ASP/ASP.NET (2001-2018)
https://www.asp-solutions.de/ - IT Beratung, Softwareentwicklung, Remotesupport -
Das hatten wir hier auch schon mal:
https://social.technet.microsoft.com/Forums/de-DE/9c96da67-b64a-4c60-a5ed-e936adf0dbf3/ssma-access-addnew-autowert?forum=sqlserverde
a) "OpenRecordset mit dbOpenDynaset und dbSeeChanges"
b) "rs.bookmark = rs.LastModified muß nach dem rs.Update eingefügt werden, dann ist der
zuletzt eingefügte Datensatz greifbar und die Projekt_ID vefügbar."