Konuyu Oyla:
  • Derecelendirme: 0/5 - 0 oy
  • 1
  • 2
  • 3
  • 4
  • 5
Sürekli Yenileme
#1
Merhabalar,
Android Projem mssql database bağlı. proje içinde bir tabloyu 2dk da bir sorgulama yaptırıyorum. Yeni bir bilgi var ise ekrandaki bilgileri yenilesin diye.
Bu şekilde çalışıyor sorun yok. Sorum şu.

Başka bir yöntem ile nasıl yapabilirim bunu? Yani 2dkda bir tüm tüm tablodaki veriler değişikmi diye sorgulamasında değişiklik olduğunda ben projedeki bir şeyi tetiklesemde o zaman güncellese kendini? Nasıl olabilir? Fikir verebiilirmisiniz?

Teşekkür Ederim..

yani amacım sql tabloda bir degeri degistirdiğimde andoid projedeki degerleride değiştirmek otomatik olarak.
Cevapla
#2
Merhaba,
DB tarafında herhangi bir update, insert veya delete gibi veri kümesi üzerinde değişiklik yapıldığı DB Event'larla anlaşılır. 
Client uygulama tarafında ise yakalamak istediğiniz DB olayını tanımlarsınız. Belirlediğiniz zaman aralığında, olay gerçekleşirse yapmak istediğiniz işlemi (refresh, notification vb.) gerçekleştirirsiniz. 
Clien tarafı için FireDac kullanıyorsanız, DB olaylarını yakalamak için Linkleri Görebilmeniz İçin Üye Olmanız Gerekiyor. Üye Olabilmek İçin Lütfen Buraya Tıklayınız. (Unidac için TUniAlerter) bileşenini kullanabilirsiniz.
While true do; Hayat döngüsü, kısır değildir! Yapılan bir yanlış, o döngünün dışına çıkmanızı sağlayacaktır.
WWW
Cevapla
#3
Bir ara TIMESTAMP alanını kullanmıştım. Her kayıt değişikliğinde tablo bazında sıralı bir değer üretiyor.

Böylece son aldığın değerden yüksek olanları sırayla çağırdığında tüm değişen ve eklenen kayıtları alıyorsun.

Epey performanslı olmuştu.
Cevapla
#4
(28-12-2018, Saat: 09:37)Fesih ARSLAN Adlı Kullanıcıdan Alıntı: Linkleri Görebilmeniz İçin Üye Olmanız Gerekiyor. Üye Olabilmek İçin Lütfen Buraya Tıklayınız.Merhaba,
DB tarafında herhangi bir update, insert veya delete gibi veri kümesi üzerinde değişiklik yapıldığı DB Event'larla anlaşılır. 
Client uygulama tarafında ise yakalamak istediğiniz DB olayını tanımlarsınız. Belirlediğiniz zaman aralığında, olay gerçekleşirse yapmak istediğiniz işlemi (refresh, notification vb.) gerçekleştirirsiniz. 
Clien tarafı için FireDac kullanıyorsanız, DB olaylarını yakalamak için Linkleri Görebilmeniz İçin Üye Olmanız Gerekiyor. Üye Olabilmek İçin Lütfen Buraya Tıklayınız. (Unidac için TUniAlerter) bileşenini kullanabilirsiniz.

Banada sık sık lazım oluyor, UniAlerter kullanan oldumu acaba
Yalnızım ama bir kente yürüyen ordu gibiyim, edebiyattan kaçınmalıyım..
Cevapla
#5
Selamlar. Konu havada kalmasın..
Araştırmalarım sonucunda, Kendi sitesinde yazdığı gibi sadece Oracle, PostgreSQL, and InterBase(Firebird) destekliyormuş.
Linkleri Görebilmeniz İçin Üye Olmanız Gerekiyor. Üye Olabilmek İçin Lütfen Buraya Tıklayınız.

Peki sorum şu Smile Ben her defasında yeni kayıt var mı diye sorgulamasamda tabloda son değişiklik saatini kontrol etsem eğer tarih farklı ise yeniletsem nasıl olur?

SELECT top 2 last_user_update,name,database_id
FROM sys.dm_db_index_usage_stats us JOIN sys.tables t ON t.object_id = us.object_id order by last_user_update desc
Cevapla
#6
Tablonuza After Insert yada Update trigger ile kontrol edip, değişen yada eklenen ID yi yeni bir tabloya atsanız ve onu kontrol edip ekrana yansıtsanız çok mu basit bir yöntem düşünmüş oluruz Smile
// Bilgi paylaştıkça çoğalır.. 

Cevapla
#7
TIMESTAMP alanı dışında SQL SERVER'ın istemci tarafı ile haberleşmesi için SERVICE BROKER hizmeti de kullanılabilir.

SOCKET için DLL yazıp TRIGGER içinden de çağırabilirsin.
Cevapla


Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
  Uygulama Sürekli Çalışsın gonulali 2 404 30-01-2019, Saat: 16:58
Son Yorum: mcuyan
  [Ödüllü Soru] FMX Android projede ekranın sürekli açık bırakılması Abdullah ILGAZ 1 500 17-07-2018, Saat: 12:14
Son Yorum: ozcanm



Konuyu Okuyanlar: 1 Ziyaretçi