Soran
Kullanıcılara Tabloya Yeni Kayıt Yapıldığını veya Kayıt Silindiğini Bildirme

Soru
-
Arkadaşlar sql server 2008 kullanıyorum 239 kullanıcım var
Veritabanında Yeni Kayıt , Kayıt Silme , Kayıt Güncelleme Gerçekleştiğinde tüm kullanıcılara işlem yapıldığını bildirip liste güncellemelerini sağlamak istiyorum bir yolu varsa yardım ederseniz müteşekkir olurum. şimdiden teşekkürler....!
Tüm Yanıtlar
-
Merhaba,
Şöyle bir yol izleyebilirsin. Yeni oluşturulan kaydı direkt oluşturma işleminden sonra bilgilendirirsin. Bu zaten bir kere olacak. Kayıt silme veya kayıt güncelleme işlemleri için ise IsDeleted, IsUpdated gibi kolonlar koyarsın. Bu kolonların alacağı değer bit olacaktır. 0 hayır 1 ise evet gibi düşünürsek bir kullanıcı profilinde değişiklik yaptığı zaman IsUpdated alanına 1 değerini verirsin. Daha sonra Windows Service tarzı bir uygulama ile her 2 dakikada bir (mesela) IsUpdated veya IsDeleted alanında hiç 1 değeri var mı diye kontrol edersin. Varsa hangi alan olduğuna bakıp ona göre e-posta şablonu gönderirsin. Demek istediğim IsDeleted 1 ise "Hesabınız kapanmıştır." gibi bir e-posta şablonu yollarsın. E-posta ile bilgilendirdikten sonra o kullanıcının 1 olan alanını yine sıfır yaparsın.
-
Bildirimi nasıl yapacaksınız, email ile mi?
tablolarınıza trigger ekleyip, email gönderen stored procedure'u çağırabilirsiniz. Bunun için email smtp ayarlarının yapılmış olması gerekiyor, önce email gönderme profil(ler)i oluşturuyorsunuz daha sonra istediğiniz profil üzerinden mesaj gönderebiliyorsunuz.
http://msdn.microsoft.com/en-us/library/ms187605.aspx burada ve
http://blog.sqlauthority.com/2008/08/23/sql-server-2008-configure-database-mail-send-email-from-sql-database/ burada nasıl email profili oluşturulacağı anlatılmış.
db mail gönderme için ise http://msdn.microsoft.com/en-us/library/ms190307.aspx burayı inceleyiniz.
Trigger ise şunun gibi olmalı;
create trigger tr_insert_notification on Tablo1 after insert as sp_send_dbmail(.......); create trigger tr_delete_notification on Tablo1 after delete as sp_send_dbmail(.......);
e-mail: onay[nokta]yalciner[at]hotmail[nokta]com
- Yanıt Olarak Öneren Ali Rıza İnceoğlu 1 Nisan 2013 Pazartesi 14:46
-
-
-
Hocam Delphi 2010 ile Seyehat Firmasına Uygulama Yazdım ama
Koltuklar Tablosuna Kayıt ile Bilgileri Kullanıcılara Geç Bildirim Yaptığım için çift koltuk satma problemi yaşıyorum.
Yani Diyorum ki:
239 Kullanıcıya (* Kullanıcıların hepsi "sa" kodu ile bağlanıyor sql server 2008 ' e *) koltuk satıldı (* Tabloya Kayıt Yapıldı *) bilgisini gönderip listelerini güncellemek istiyorum. Yardımcı olursanız çok müteşekkir olurum. Saygılar.
-
Programı hangi IDE ile geliştirdiğinden çok bence veri tabanının yapısı önemli. Zira koltuk bilgilerini tuttuğun tabloda aynı aracın (otobüs, tren, uçak vs.) aynı koltuğunu bir daha kayıt ettirmemek için bu alana bir unique key constrain koyman gerekir. Bu sayede sen istesen bile SQL buna izin vermeyecektir.
-
Direk hangi development ortamında geliştirdiğiniz ile alakalı. Ben Delphi bilmiyorum, ama .net ortamında geliştirirken Concurrency ile kullanıcılara "veriyi aldıktan sonra bir başkası değişklik yaptı" bilgisine ulaşılabiliyor.
e-mail: onay[nokta]yalciner[at]hotmail[nokta]com
- Düzenleyen Önay YALÇINER 27 Mart 2013 Çarşamba 11:49
- Yanıt Olarak Öneren Ali Rıza İnceoğlu 1 Nisan 2013 Pazartesi 14:46