Sqlserver
 sql >> Datenbank >  >> RDS >> Sqlserver

Fehler:INSERT EXEC-Anweisung kann nicht verschachtelt werden. und Die ROLLBACK-Anweisung kann nicht innerhalb einer INSERT-EXEC-Anweisung verwendet werden. Wie löst man das?

Dies ist ein häufiges Problem, wenn versucht wird, Daten aus einer Kette gespeicherter Prozeduren zu „blasen“. Eine Einschränkung in SQL Server besteht darin, dass jeweils nur ein INSERT-EXEC aktiv sein kann. Ich empfehle, sich How to Share Data Between Stored Procedures anzusehen, einen sehr gründlichen Artikel über Muster, um diese Art von Problem zu umgehen.

Eine Problemumgehung könnte beispielsweise darin bestehen, Sp3 in eine Tabellenwertfunktion umzuwandeln.