Я не думаю, что вы можете использовать оператор CASE
для выполнения некоторых действий (вставки, обновления ...), он используется для вычисления выражений.Вы можете использовать IF..ELSE
оператор:
IF @accesslevel = 'Order'
INSERT INTO Permissions(UserAccountID,PrintOrder)
VALUES(@userid,1)
ELSE IF @accesslevel = 'Cashier'
INSERT INTO Permissions(UserAccountID,PrintInvoice,SaveAndClear)
VALUES(@userid,1,1)
ELSE IF @accesslevel = 'Supervisor'
INSERT INTO Permissions(UserAccountID,TableOperation,
ExchangeRate,SaleReport,Section,Category,
MenuItem,DeleteOrder,DeleteOneItem,MergeTable,
SplitTable,PrintInvoice,PrintOrder,CalculateChange,
SaveAndClea)
VALUES(@userid,1,1,1,1,1,1,1,1,1,1,1,1,1,1)
ELSE IF @accesslevel = 'Manager'
INSERT INTO Permissions(UserAccountID,TableOperation,
ExchangeRate,SaleReport,Section,Category,
MenuItem,DeleteOrder,DeleteOneItem,MergeTable,
SplitTable,PrintInvoice,PrintOrder,CalculateChange,
SaveAndClear,DailyIncome)
VALUES(@userid,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1)
ELSE
INSERT INTO Permissions(UserAccountID,TableOperation,
ExchangeRate,TablePicture,SaleReport,DailyIncome,
Section,Category,MenuItem, UserAccount,UserPermission,
StaffManagement,DeleteOrder,DeleteOneItem,MergeTable,
SplitTable,PrintInvoice,PrintOrder,CalculateChange,
SaveAndClear)
VALUES(@userid,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1)