Forum
Merhaba arkadaşlar ,
trigger ile stok hareketi eklemek istiyorum ekleme yapıyorum fakat tek satır ekliyor faturadaki diğer satırları nasıl ekletebilirim.
Teşekkür ederim şimdiden.
Merhaba,
Daha fazla detay verirseniz veya yaptığınız trigger'ı paylaşırsanız daha hızlı sonuç alabilirsiniz.
örnek olarak mesela öğrenciler tablosuna yeni bir kayıt eklendiğinde, devamsızlık tablosuna bu öğrenciye ait kaydın eklenmesi aşağıdaki gibi.
create trigger DevamsizlikEkle
on ogrenciler
after insert
as
begin
declare @id int
select @id = ogrenciID from inserted
insert into tblDevamsizlik(ogrenciID, devamsizlik) values (@id, 0)
end
mücahit bey teşekkürler cevabınız için
c# da fatura kaydı yapınca procedure ile stok hareketlerini stokhareket tablosuna aktarıyorum. fakat gridviewdeki ilk satırı atıyor 5 kalem ürün girdiğimde nasıl atıcam hep ilk ürünü atıyor bunun için nasıl bir yol izlemem gerekiyor.
Hocam kusura bakmayın ben tam anlayamadım olayı hala 🙂 siz sqlde "a" tablosuna kayıt eklenirse bu eklenen kayıttan şu sütunlardaki değerleri al ve "b" tablosunun şu sütunlarına ekle diye trigger yazmışsanız isterse 100 kalem girin her kayıt eklenişinde bu trigger devreye girecek.
diyelim ki ard arda aşağıdaki gibi sorgu oluşturdunuz ve execute edip çalıştırdınız. 1. kayıt eklendi - trigger çalıştı, 2. kayıt eklendi - trigger çalıştı.
bu şekilde gider bu. bu sorgu çalıştığında 6 rows affected yazar.
insert into ürünler (ürün adı, miktarı, fiyatı) values ('elma',10,5)
insert into ürünler (ürün adı, miktarı, fiyatı) values ('armut',10,5)
insert into ürünler (ürün adı, miktarı, fiyatı) values ('portakal',10,5)
kusura bakmayın ben anlatamadım sanırım. şöyle visual studio ortamında fatura modülüm var burdan fatura keseceğim şöyle faturalar ve stokhareket diye tablolarım var fatura keserken gridviewe 10 kalem ürün girdim stokhareket tablosuna 10 kalem atması gerekiyor fakat 1 kalem atıyor kayıtlarda sorun yok acaba trigger içinde döngü mü olur nasıl olur mantık kuramadım umarım şimdi anlaşılır olmuştur 🙂 triggeri faturalar tablosuna yazdım zaten kayıt eklemede sorun yok sadece seçtiğim satır kadar atmıyor
gridview üzerinden mi ekleme işlemi gerçekleştiriyorsunuz, bir buton vs yok değil mi?
buton var bildiğimiz form tasarımı gridview ve buton var butona basınca fatura kaydını c# üzerinden stokhareketlerini de trigger üzerinden yaptırmak istedim ama dediğim gibi normalde kayıtlarıları yapıyor fakar stok hareketleri tek atıyor store procedure yazdım her iki kayıt içinde faturalar için c# da stokhareketleri içinde mssql de trigger oluşturdum .
create trigger deneme
on üye
after insert
as
begin
insert into deneme(adı,soyadı,yas,bilgi) value("");
insert into deneme(adı,soyadı,yas,bilgi) value("");
insert into deneme(adı,soyadı,yas,bilgi) value("");
end
bu sekılde kullanabılırsın grdigin verılerı trigger da görebılırsın
Not: eger gridginız stok kayıtlarını kaydettırmek ıstıyorsanızı döngu kullanabılırsın