1
我有一個存儲過程,現在只是假設驗證您的字符串輸入爲有效日期。我試過在程序外部運行這個程序,它運行得很完美,但是隻要我把它放在程序中,參數就會變成零。SQL存儲過程參數被破壞?
我的程序如下:
CREATE PROCEDURE spDateRange
@DateMin varchar = NULL,
@DateMax varchar = NULL
AS
PRINT @DateMin;
PRINT @DateMax;
IF @DateMin IS NOT NULL AND @DateMax IS NOT NULL
BEGIN
PRINT @DateMin;
IF(ISDATE(@DateMin)=1 AND ISDATE(@DateMax)=1)
PRINT 'Valid Date';
ELSE
RAISERROR('Parameters not date format', 10, 1);
END
ELSE
RAISERROR ('Invalid parameters', 10, 1);
而我的執行語句是:
EXECUTE spDateRange @DateMin='01/11/2011', @DateMax='01/12/2011';
而且我的輸出是:
0
0
0
Parameters not date format
哦,哇。這樣一個小錯誤,我應該抓住了。萬分感謝 – Spidy 2011-03-21 16:12:24