Şimdi Ara

Trigger Kullanımı Hakkında Sorun Yaşıyorum

Daha Fazla
Bu Konudaki Kullanıcılar: Daha Az
2 Misafir - 2 Masaüstü
5 sn
3
Cevap
0
Favori
422
Tıklama
Daha Fazla
İstatistik
  • Konu İstatistikleri Yükleniyor
0 oy
Öne Çıkar
Sayfa: 1
Giriş
Mesaj
  • Merhaba, 1 adet ERP yazılımımız var, yazılım üzerinde üretim kaydı fişi oluşturuluyor. Üretim kaydı fişi oluştuğunda ilgili tablolara malüm veri tabanında insert işlemi oluyor. Yapmaya çalıştığım şey, ilgili veriler tablolara insert olurken benim belirteceğim alanları istediğim gibi update yapması. Update yapmak istediğim alan 2 ayrı tablolarda. Ben bu iki ayrı tabloyu VIEW yaparak birleştirdim. Update işleminide VIEW üzerinden yapmak istiyorum.

    Programdan üretim kaydı yaptığımda dbo.uretimfisi tablosuna kaytı atıyor. dolayısıyla triggerimi bu tabloya yerleştirdim ve aşağıda da kodu paylaşıyorum.

    1 Adet View oluşturdum ve bu view içerisinde 3 ilgili tablo birbirlerine bağlı.

    VIEW ADI: (uretim)

    SELECT     dbo.uretimfisi.seri, dbo.islemir.opno 

    FROM dbo.islemir RIGHT OUTER JOIN
    dbo.uretimfisi LEFT OUTER JOIN
    dbo.islemirdetay ON dbo.uretimfisi.islemirdetayID = dbo.islemirdetay.id ON dbo.islemir.id = dbo.islemirdetay.fssay


    TRIGGER :

    ALTER TRIGGER [dbo].[UretimGuncelle] 
    On [dbo].[uretimfisi]
    AFTER INSERT AS
    update uretim set seri = 'M' where opno = '2'
    update uretim set seri = 'B' where opno = '1'



    yukarıda da görüleceği gibi, demişim ki oluşan üretim fişinde opno 2 ise seri M olsun. opno 1 ise seri B olsun. Problem şu ki triggerim hata veriyor. Çünki sanırım opno ve seri alanları ayrı ayrı tablolarda bulunmakta. fakat bu iki tabloyu ben VIEW de birleştirdim. Olur diye düşündüm ancak sanırım birşey eksik.



    < Bu mesaj bu kişi tarafından değiştirildi uniperson -- 10 Mayıs 2016; 13:59:41 >







  • Yazdığım koddamı sorun var anlayamadım.. birisi bana ilgili tabloya insert işlemi olduktan sonra, insert olan tabloda yani aynı tablo üzerinde update yapabileceğim bir kod paylaşabilirmisiniz ? İnsert işleminden sonra da çalışabilir öncede çalışabilir.
  • vieiw ile triggerin alakası yok triggeri hangi tabloya bağlamışşan o tablo da degişiklik oldugunda insert update veya select tirigger tetklenir tirirger kodu ilgili tabloda kayıt oluştugundamı tetiklenecek ? tetiklenecekse where şartı sabitmi 1-2 gibi vsss



    < Bu mesaj bu kişi tarafından değiştirildi Parola_18 -- 22 Mayıs 2016; 9:04:43 >
  • 
Sayfa: 1
- x
Bildirim
mesajınız kopyalandı (ctrl+v) yapıştırmak istediğiniz yere yapıştırabilirsiniz.