Insert Trigger hakkında.

MS SQL Server veritabanı ve SQL komutlarıyla ilgli sorularınızı sorabilirsiniz. Delphi tarafındaki sorularınızı lütfen Programlama forumunda sorunuz.
Cevapla
Kullanıcı avatarı
barutali
Üye
Mesajlar: 297
Kayıt: 02 Tem 2007 02:30

Insert Trigger hakkında.

Mesaj gönderen barutali »

Kod: Tümünü seç

SET NOCOUNT ON
DECLARE
@BEKLEYEN INT,
@PORTFOYDE INT,
@TAHSIL INT,
@CIRO INT,
@ODEME INT


SELECT 
@BEKLEYEN  = (SELECT COUNT(INSERTED.ID) FROM INSERTED 
              WHERE INSERTED.TIP = 0 AND INSERTED.ISLEMNO = INSERTED.ISLEMNO),
@PORTFOYDE = (SELECT COUNT(INSERTED.ID) FROM INSERTED 
              WHERE INSERTED.TIP = 1 AND INSERTED.ISLEMNO = INSERTED.ISLEMNO),
@TAHSIL    = (SELECT COUNT(INSERTED.ID) FROM INSERTED 
              WHERE INSERTED.TIP = 2 AND INSERTED.ISLEMNO = INSERTED.ISLEMNO),
@CIRO      = (SELECT COUNT(INSERTED.ID) FROM INSERTED 
              WHERE INSERTED.TIP = 3 AND INSERTED.ISLEMNO = INSERTED.ISLEMNO),
@ODEME     = (SELECT COUNT(INSERTED.ID) FROM INSERTED 
              WHERE TIP = 4 AND INSERTED.ISLEMNO = INSERTED.ISLEMNO) 
FROM INSERTED;


UPDATE TBLCEKSENETALT
SET
TBLCEKSENETALT.BEKLEYEN = @BEKLEYEN,
TBLCEKSENETALT.PORTFOYDE = @PORTFOYDE,
TBLCEKSENETALT.TAHSILEDILEN = @TAHSIL,
TBLCEKSENETALT.CIROEDILEN = @CIRO,
TBLCEKSENETALT.ODEMEYAPILAN = @ODEME
FROM
TBLCEKSENETALT, INSERTED
WHERE 
TBLCEKSENETALT.ISLEMNO = INSERTED.ISLEMNO;


Merhabalar Trigger ım yukarıdaki gibidir. TBLCEKSENET tabloma insert ödilen kaydın TIP numarasına göre ve ISLEMNO suna göre toplam kayıt sayısını alıp TBLCEKSENETALT tablomdaki kaydı güncellemek istiyorum fakat bir türlü beceremedim.

Not : EMS SQL Manager kullandığım için trigger ın üst kısmında bulunan bilgileri görünmüyor.
INSERT TRIGGER
Çalışma şekli : AFTER

Teşekkürler
amatör küme programcı :D
Kullanıcı avatarı
aslangeri
Moderator
Mesajlar: 4322
Kayıt: 26 Ara 2003 04:19
Konum: Ankara
İletişim:

Re: Insert Trigger hakkında.

Mesaj gönderen aslangeri »

s.a.
mssql de triggerlar fb deki gibi her kayıt için tek tek çalışmıyor. toplu halde kayıt eklediğiniz zaman tüm kayıtlar için bir kere çalışıyor.
inserted cursorunun döngüye sokup o şekilde deneyin.
kolay gelsin.
Duyduğun Şeylerin Söylediklerim Olduğuna Eminim Ama
Anladığın Şeylerin Anlatmak İstediklerim Olduğuna Emin Değilim
Kullanıcı avatarı
barutali
Üye
Mesajlar: 297
Kayıt: 02 Tem 2007 02:30

Re: Insert Trigger hakkında.

Mesaj gönderen barutali »

@aslangeri hocam cevap yazdığınız için çok teşekkürler. Triggerı çözmek çok vakit kaybettirdi bende ondan vazgeçip Query ile manuel olarak hallettim :)

İyi Çalışmalar
amatör küme programcı :D
Cevapla