根據參數我想在存儲過程中執行不同的更新。我已經嘗試了以下代碼的許多排列,但我總是有錯誤。SQL Server上的SQL存儲過程中的大小寫
@EmpID int = 0,
@NewStatus nvarchar(10) = 0
AS
BEGIN
SET NOCOUNT ON;
select CASE @NewStatus
when 'InOffice' then
Update tblEmployee set InOffice = -1 where EmpID = @EmpID
when 'OutOffice' then
Update tblEmployee set InOffice = -1 where EmpID = @EmpID
when 'Home' then
Update tblEmployee set Home = -1 where EmpID = @EmpID
END
只有SQL Server中的CASE **返回一個單一的原子值 - 它不是用來處理表達式或代碼塊的(如C#中的switch) – 2013-02-26 22:23:59
您可以定義「錯誤」 - 特別是在使用Michael的正確語法?什麼錯誤? – 2013-02-27 00:16:38