SQL Server 存儲過程if else細節


寫一個簡單的存儲過程,簡單的邏輯,簡單的語句,如下

IF @TYPE = '1' BEGIN組

。。。(查詢語句)

END

IF @TYPE = '2' 
BEGIN
。。。(查詢語句)
END

ELSE BEGIN 
。。。(查詢語句)
END

簡單語句用mybatis調用該存儲函數,type傳值為‘1‘時報空指針錯誤,提示我參數設置錯誤

懵逼的檢查着我的Mapper、dao、service,沒有問題,但是傳值‘1’就是不可以!就是報錯!

好吧,我直接數據庫運行這個存儲函數,傳值‘1’,崩潰的是,數據能完美的、順順利利的出來!

我X,這是什么鬼,然后懵逼的換了下各個if下面的語句,好吧,只要是‘1‘就是有問題~

查了度娘還以為是什么返回值的問題,但是我把原來1的位置的SQL放到其他下面還是可以出來的啊!

最后我重新排查了下語句,第二個if前面沒else,但是從java的邏輯來說這樣也可以吧,不過這是存儲過程的話那還是把他加上吧!

IF @TYPE = '1' BEGIN組

。。。(查詢語句)

END

ELSE IF @TYPE = '2' 
BEGIN
。。。(查詢語句)
END

ELSE BEGIN 
。。。(查詢語句)
END

然后,然后,然后他就好了。。。花了我兩個小時排查的問題。。。他就好了,雖然很開心,但是很崩潰!!!!!

好的,就這樣了,我去哭會兒


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM