天天看點

SQL SERVER 存儲過程的天然遞歸

有幾次,我編寫或修改存儲過程的時候,為圖友善,在末尾随手寫上 執行這個存儲過程 的語句,比如

ALTER PROCEDURE prd_GetData
  @Top INT = 10;
AS
  SELECT * FROM [dbo].Table1  ORDER BY ID DESC;
END

EXEC [dbo].prd_GetData      

本來應該用滑鼠標明最後一行,指定它來執行,但一時手顫,沒有選上就按下運作,結果出來好多個結果,最後系統警告太多層了,SQL自動退出。

究其原因,是系統将 

EXEC [dbo].prd_GetData