Sql Trigger
#1
Merhaba,

SQL Server Trigger konusunda çok yeniyim. 
Ekteki şekilde bir çalışma yapmaya çalışıyorum. Yardımcı olabilirseniz çok mutlu olurum.

Teşekkürler


Eklenti Dosyaları
.jpg   Trigger.JPG (Boyut: 38,96 KB / İndirilme: 23)



  Alıntı
Bu mesajı beğenenler:
#2
USE [veritabanı  adı]
GO

SET ANSI_NULLS ON
GO

SET QUOTED_IDENTIFIER ON
GO

CREATE trigger [dbo].[STOKEKLE] on [dbo].[Stoklar]
after INSERT
as
begin

INSERT INTO dbo.Takip (Kod,UrunTanim,Fiyat)
SELECT        Kod,UrunTanim,Fiyat
FROM            dbo.Stoklar

END
GO

ALTER TABLE [dbo].[Stoklar] ENABLE TRIGGER [STOKEKLE]
GO



  Alıntı
Bu mesajı beğenenler:
#3
Sn @hedefkaya dönüşünüz için çok teşekkür ederim.

Kodlarınızı denedim  fakat dbo.Stoklar tablosuna bir kayıt eklediğimde dbo.Stoklar tablosundaki tüm kayıtlar dbo.Takip tablosuna aktarılıyor. Ben sadece eklenen kaydın eklenmesini istiyorum. Kodu nasıl revize etmem gerekiyor. Değerli desteklerinizi rica ederim.

Teşekkürler



  Alıntı
Bu mesajı beğenenler:
#4
stoklar tablosuna  AKTIFSATIR  adında  yeni bir sayısal alan açın  varsayılan  değeri  1   olsun   

tiregersi   silin  bunu ekleyin  deneyin  

USE [veritabanı  adı]
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE trigger [dbo].[STOKEKLE] on [dbo].[Stoklar]
after INSERT
as
begin
INSERT INTO dbo.Takip (Kod,UrunTanim,Fiyat)
SELECT        Kod,UrunTanim,Fiyat
FROM            dbo.Stoklar
WHERE        (dbo.Stoklar.AKTIFSATIR = 1) 
UPDATE dbo.Stoklar
SET 
AKTIFSATIR = 0
FROM Stoklar
WHERE   (dbo.Stoklar.AKTIFSATIR = 1) 
END
GO
ALTER TABLE [dbo].[Stoklar] ENABLE TRIGGER [STOKEKLE]
GO



  Alıntı
Bu mesajı beğenenler:
#5
Satır eklemeden farklı bir çözümü yok mudur hocam?

Belirttiğiniz seçenek benim işimi görmüyor maalesef.



  Alıntı
Bu mesajı beğenenler:


Foruma Git:


Bu konuyu görüntüleyen kullanıcı(lar): 1 Ziyaretçi