Neuigkeiten:

Wenn ihr euch für eine gute Antwort bedanken möchtet, im entsprechenden Posting einfach den Knopf "sag Danke" drücken!

Mobiles Hauptmenü

Passtrough mit Output denkt, es würde keine Rückgabewerte erhalten

Begonnen von Mansa, Februar 20, 2023, 08:12:57

⏪ vorheriges - nächstes ⏩

Mansa

Hallo Zusammen
Ich konnte bis anhin nichts zu diesem Thema finden und hoffe, es kann mir jemand helfen.
Ich versuche über eine Passtrough Abfragen ein Insert Into auf einen MSSQL Server laufen zu lassen. Darin gebe ich über die Output Funktion den Neuen Primärschlüssel zurück damit dieser Verarbeitet werden kann.

Die Abfrage habe ich so konfiguriert, dass sie Rückgabewerte erwartet. Es zeigt mir jedoch die Meldung an, dass meine Abfrage keine Rückgabewerte erhaltet obwohl ich dies angegeben habe.

Wenn ich die Abfrage auf dem Server direkt laufen lasse funktioniert sie Problemlos und gibt mir auch die erwarteten Werte zurück.

Mansa

Ich konnte es selber lösen.
Das Problem liegt an der Rückmeldung vom Server. Sobald das Insert Into ausgeführt wird, wird eine DONE_IN_PROC Meldung an den Client zurückgegeben um die Ausführung zu bestätigen. Dadurch denkt Access, dass die Abfrage durch ist und keine Werte zurückgegeben wurden.
Die Lösung ist am Anfang ein "set nocount on" zu setzen. Damit wird die Rückmeldung unterdrückt und der Code vollständig  ausgeführt bevor etwas zurückgegeben wird. Nun läuft es.

Ich hoffe ich konnte es verständlich erklähren. ;D