2014-06-18 16 views
5

Her 5-10 dakikada bir güncelleştiren bir veritabanının içeriğini görüntüleyen bir uygulama var. Veritabanındaki tüm verilerin yüklenmesi yaklaşık 5 dakika sürer. Her yenilemeyle veritabanındaki tüm verileri yeniden yüklemek yerine, yalnızca güncellenmiş yeni satırlar veya satırların alanlarını yüklemek istiyorum.Satır güncelleştirmesi veya sqlalchemy ile satır eklenmesi bekleniyor

  1. Değiştirilmiş veya yeni alanları sqlalchemy ile kontrol etmek mümkün mü (değişiklikler için anket yapmak için)?
  2. Değişken veya yeni alanların (kareleri engelleyen bir işlev çağrısı ile) sqlalchemy ile beklenmesi mümkün mü?

Veritabanı, önemliyse, bir posta veritabanıdır.

cevap

2

ProstgeSQL, ekleme, silme ve güncelleme bildirimlerini göndermek için tetikleyicilerle birlikte kullanılabilecek bir NOTIFY/LISTEN mekanizmasına sahiptir. Bildirim, tablo ve eylem gibi bir argüman içerir.

SQLAlchemy bu işlevselliği destekliyor gibi görünmüyor, büyük olasılıkla SQL standardı değil Postgres'e özgü. İşte

piton ve bükülmüş http://www.divillo.com/

Yasal kullanarak DİNLE/NOTIFY, sadece sqlalchemy ve Postgres'e dökümentasyonundan scumming oldum bir prostgres veritabanında değişikliklerin denetlenmesine yönelik bir örnektir. Postgres ve python'da NOTIFY hakkında daha fazla googling yapılması daha fazla yardım sağlayabilir.

İlgili konular