У меня есть хранимая процедура, которая добавляет товар в корзину. Но если в корзине есть товар, и я выбираю тот же товар, но на этот раз я выбираю другой размер или цвет, я хочу добавить новую строку в корзину, а не обновлять существующую строку с идентификатором корзины.
Вот ИП:
ALTER PROCEDURE [dbo].[ShoppingCartAddItem]
(@CartId char(36),
@ProductId int,
@Attributes nvarchar(1000))
AS
If Exists(Select CartId From ShoppingCart
Where ProductId = @ProductId and CartId = @CartId AND Attributes = @Attributes)
Insert Into ShoppingCart (CartId, ProductId, Attributes, Quantity, DateAdded)
Values (@CartId, @ProductId, @Attributes, 1, GETDATE())
Else
If Exists(Select CartId from ShoppingCart Where ProductId = @ProductId And CartId = @CartId)
UPDATE ShoppingCart
Set Quantity = Quantity + 1
WHere ProductId = @ProductId And CartId = @CartId
Else
If Exists(Select ProductName From Products Where ProductId = @ProductId)
Insert Into ShoppingCart (CartId, ProductId, Attributes, Quantity, DateAdded)
Values (@CartId, @ProductId, @Attributes, 1, GETDATE())
Есть ли у кого-нибудь идеи, как это исправить.
Спасибо