MS-SQL'de Sepete Ürün Ekleme

MS-SQL'de Sepete Ürün Ekleme işlemi yapan bir Prosedür oluşturacağız.

Merhaba Arkadaşlar,

MS-SQL'de Sepete Ürün Ekleme işlemi yapan bir Prosedür oluşturacağız. Oluşturacağımız prosedür girilen Kullanıcı ID, Ürün ID ve miktara göre mevcut kullanıcının sepetine ürün eklemesi yapacak.

Kullanıcılar, Ürünler ve Sepet olmak üzere üç tane tablomuz olduğunu varsayalım;


CREATE PROC AddToBasket (@UserID INT = NULL, @ProductID INT = NULL, @piece INT = 1) 

-- adedi default deger 1 olarak tanimladim, 0 tanimlasaydim; 0 urunu sepete at gibi bir komut cikardi ki bu da mantiksizdir.

AS

SET NOCOUNT ON

IF @UserID IS NULL OR @ProductID IS NULL -- her ihtimale karşı Kullanici ve/veya Urun ID'lerinin bos olup olmadigini denetlememiz gerekiyor
    RETURN 0

ELSE IF EXISTS(SELECT * FROM BasketTable WHERE ProductID = @ProductID AND UserID = @UserID) -- Girilen degerler dogru bir sekilde girildi ve istenen degerler tabloda mevcut ise

    UPDATE BasketTable SET Piece = Piece + @Piece -- Girilen miktar kadar urun adedinde arttirima gidiyorum

    WHERE ProductID = @ProductID AND UserID = @UserID -- Urun ve Kullanicinin ID'si girilen degerleri saglamak zorunda bunu yapmaktaki amacim yanlis kullanici uzerinde islem yapmamak.

ELSE

    INSERT INTO BasketTable VALUES  (@UserID, @ProductID, @Piece) -- Girilen Kullanici ID ve Urun ID si tabloda yok ise ekle diyorum, boylece sonraki sefere tabloda o degerleri bulabilecegiz.

    SET NOCOUNT OFF

GO




Kodları bu şekilde tamamladık, Şimdi oluşturduğumuz prosedürü çalıştıralım:


EXEC AddToBasket @UserID=2470, @ProductID=10, @Piece=3

  • Etiketler;
Yorum Yaz

Yorum yazabilmek için üye girişi yapmanız gerekiyor!

Yukarı Git