none
insert and update sorunu RRS feed

  • Soru

  • SQL sp ile şunu yapmaya çalıştım küçük bir satış programı farkı ürün ise insert ayni ürün ise miktar bir artırmak ama sadece bir kez update ediyor ikinci kez yapınca değişmiyor miktar

    ALTER PROCEDURE 
    saves
    
    	
    
    (
    
        
    
        @barkod 
    nvarchar(50),
    
     	@smiktar 
    money,
    
    	@satisno 
    money
    
    		
    
    	)
    
    
    AS
    
    	
    IF EXISTS (SELECT satisno FROM  satislar WHERE satisno=@satisno)
    
    	
    
    
    begin
    
    
     
    
    	
    UPDATE satislar SET barkod=@barkod,smiktar=@smiktar+1,satisno=@satisno 
    
    	
    WHERE satisno=@satisno
    
    	
    
    	
    end
    
    	
    else	
    
        
    begin
    
    	
    
    	
    
    	
    INSERT INTO satislar(barkod,smiktar,satisno)
    
    	
    VALUES (@barkod,@smiktar,@satisno)
    
    	
    
    	
    
    END
    
    

    8 Ocak 2015 Perşembe 21:26

Yanıtlar

  • CREATE PROC SP_UrunEkle (@UrunKodu int, @Miktar int)
    AS
    BEGIN
       IF EXISTS (SELECT 1 FROM Urunler WHERE UrunKodu=@UrunKodu)
       BEGIN
        UPDATE Urunler SET Miktar = Miktar + 1 WHERE UrunKodu=@UrunKodu
       END
      ELSE
      BEGIN
       INSERT INTO Urunler (UrunKodu,Miktar) VALUES (@UrunKodu,@Miktar)
      END
    END


    oguzkurtcuoglu.com


    • Yanıt Olarak İşaretleyen Serkan Canseven 14 Ocak 2015 Çarşamba 07:39
    8 Ocak 2015 Perşembe 23:42

Tüm Yanıtlar

  • @satisno parametresine 1 defa değer yüklersen bir defa çalışır. N defa değer yüklersen N defa çalışır. 

    O yüzden Form tarafını bi görmemiz lazım.

    8 Ocak 2015 Perşembe 23:02
  • CREATE PROC SP_UrunEkle (@UrunKodu int, @Miktar int)
    AS
    BEGIN
       IF EXISTS (SELECT 1 FROM Urunler WHERE UrunKodu=@UrunKodu)
       BEGIN
        UPDATE Urunler SET Miktar = Miktar + 1 WHERE UrunKodu=@UrunKodu
       END
      ELSE
      BEGIN
       INSERT INTO Urunler (UrunKodu,Miktar) VALUES (@UrunKodu,@Miktar)
      END
    END


    oguzkurtcuoglu.com


    • Yanıt Olarak İşaretleyen Serkan Canseven 14 Ocak 2015 Çarşamba 07:39
    8 Ocak 2015 Perşembe 23:42