創(chuàng)建和使用存儲過程的注意事項:
1、在創(chuàng)建存儲過程中,有多個參數(shù)時,有默認(rèn)值的參數(shù)放在存儲過程參數(shù)列表的最后
例如:
無默認(rèn)值 --->在創(chuàng)建存儲過程寫參數(shù)的時候 ? @startDate datetime,
有默認(rèn)值 --->在創(chuàng)建存儲過程寫參數(shù)的時候 ? @endDate datetime=NULL ,
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? @userId varchar(20)=NULL

圖1
2、在創(chuàng)建存儲過程的代碼結(jié)束時,要加上批處理GO,如果不加GO,那么調(diào)用存儲過程的語句將被包含在創(chuàng)建存儲過程的代碼中,造成存儲過程被遞歸調(diào)用。

圖2
3、在調(diào)用帶多個參數(shù)的存儲過程時,要求按照存儲過程的參數(shù)順序依次傳遞,如果不按照順序傳遞,那么必須指定參數(shù)名
① ?在圖3中,參數(shù)的順序是在創(chuàng)建存儲過程時的順序

圖3
② ?在圖4中,按照創(chuàng)建存儲過程時的參數(shù)順序,可以省略參數(shù)名稱,直接寫參數(shù)值

圖4
4、一旦某一個參數(shù)按照“@參數(shù)名=參數(shù)值”這樣的格式來傳遞參數(shù)時,那么該參數(shù)之后的其他參數(shù)都必須以同樣的格式傳遞參數(shù)值
如圖5.

圖5