it-swarm.com.de

Wenn eine gespeicherte Prozedur geändert wird, während sie derzeit in einem Cursor verwendet wird, verwendet der Cursor weiterhin die alte Abfrage, bevor sie geändert wurde?

Wenn eine gespeicherte Prozedur (oder Ansicht) derzeit in einem lang laufenden Cursor verwendet wird und ich diese gespeicherte Prozedur ändere, verwendet der Cursor weiterhin die alte Instanz der gespeicherten Prozedur, bis der Cursor fertig ist?

7
J.D.

Auf Vorschlag von @ LowlyDBA habe ich mich entschlossen, dies (bis zu einem gewissen Grad) selbst zu testen. Ich war gerade dabei, ein heißes Produktionsproblem zu beheben, also konnte ich nicht aufhören, den Code für einen Testfall zu schreiben. Aber der Code, den ich debugge, ist dieses Szenario. Also habe ich die Prozedur aktualisiert und mir die laufenden Abfragen angesehen und festgestellt, dass sich der Abfragetext vor und nach meiner Änderung der Prozedur geändert hat, während der Cursor weiter iterierte.

6
J.D.