我想用開關的情況下開關罩2012
這裏做多個更新表在SQL Server 2012是我的查詢
CREATE PROCEDURE deactivateRecord
@paraTableName varchar(15),
@paraID int
AS
BEGIN
SET NOCOUNT ON;
select
case @paraTableName when 'UserMaster' then update UserMaster set IsActive=1 where [email protected]
case @paraTableName when 'GroupMaster' then update GroupMaster set IsActive=1 where [email protected]
END
GO
我要去哪裏錯了?幫幫我 。
你離開結束。 case @paraTableName'UserMaster'然後更新UserMaster set IsActive = 1其中UserID = @ paraID END – PeterRing
@PeterRing,添加END子句是不夠的,因爲在SELECT語句中不可能有UPDATE語句。請參閱下面的答案。 – Dan
T-SQL中的'CASE'不是設計用來處理程序流 - 而是使用'IF'。 'CASE'是一個**表達式**,可以返回一個或另一個原子值 - 但它**不能**包含代碼塊 –