一、帶輸入輸出參數的存儲過程
這里以登錄賬號為例子:
(1)問題分析
A、首先登錄賬號需要(用戶名和密碼)
B、然后要判斷賬號是否登錄成功(有返回值)
(2)寫登錄驗證的存儲過程
這里舉一個小例子:
表結構如下:
表中的部分數據為:
只有當用戶名和密碼同時滿足條件時,才能登錄成功
create procedure logincheck
--定義輸入參數,傳入用戶名和密碼 @us varchar(20), @pw varchar(20),
--這個是登錄的返回值 @res int output as declare @num int; set @num = 0; begin
--這里是驗證登錄的SQL語句,只有用戶名和密碼都正確的時候,就會得到值1,否則為0 select @res = count(*) from userTable where _user=@us and _pwd=@pw; end;
最后一步、調用登錄的存儲過程
begin
--定義一個變量用來存儲登錄的返回結果 declare @numout int; exec logincheck 'Yuan','123456',@numout output;
--打印返回結果 print(@numout); end;
很多時候我們只需要在數據庫中修改存儲過程就🆗了,這樣避免了我們邏輯代碼的修改,存儲過程實現了業務和數據的解耦。