folder Tahribat.com Forumları
linefolder Database - Veritabanı
linefolder Veritabanını Remote Data İle Senkron. Hk.



Veritabanını Remote Data İle Senkron. Hk.

  1. KısayolKısayol reportŞikayet pmÖzel Mesaj
    Böcüklerin Efendisi
    krypt
    krypt's avatar
    Kayıt Tarihi: 05/Mart/2004
    Erkek

    Scraper bot ile bir siteden ürün çekip SQLite veritabanına kaydediyorum. Ürünleri "INSERT OR REPLACE" ile giriyorum böylece yeni ürünler veritabanına eklenirken, değişiklik yapılanlar veritabanında da değişiyor. Ancak problem sitede stokta kalmayan ürünler. Siteden silinen ürünlerin veritabanından da silinmesini hangi yolla sağlayabilirim? Aklımda bir yöntem var ama oldukça kıllı. Fikirlerinize açığım.


    while (1<2)
  2. KısayolKısayol reportŞikayet pmÖzel Mesaj
    nick6
    0x656e
    0x656e's avatar
    Kayıt Tarihi: 19/Mayıs/2012
    Homo

    Senin söylediiğin yöntemi hatırlamıyom şimdi o telegramdan konuştugumuz konuyu yani.

    Şöyle birşey miydi ? Veya Böyle yapabilir misin ? 

    @Not DB'ci değilim .

     

     

    Bütün ürünlerin sayısını al eğer sende ki ile eşitse işlem yapma eşit değilse senin istediğin işlemi yapsın.Ha bu da sıkıntıya sebep olur 1 item silinip 1 item eklenmişse eklenen item sende olmayacak.


    Neyse zaten kafam sikilmişti bilen birisi vardır hemide up olsun  

  3. KısayolKısayol reportŞikayet pmÖzel Mesaj
    DuPi
    DuPi's avatar
    Kayıt Tarihi: 21/Ağustos/2005
    Erkek

    logizle diye bir tablo yap.

    sitede yaptığın işlemleri o tabloya kaydet

    program her güncellemede o tablodaki sorguları localde çalıştırsın sonra ordan silsinki mükerrer yapmasın.

    buda bir yol.


    Ne zaman birşey öğrenmek istesem, Birden Vaktim Kalmıyor ?
  4. KısayolKısayol reportŞikayet pmÖzel Mesaj
    S2kucuk
    S2kucuk's avatar
    Banlanmış Üye
    Kayıt Tarihi: 06/Haziran/2015
    Erkek

    İşlem yaptığın her kayıt için bir date fieldını update edebilirsin. Varsa, yeniyse yada değiştiyse işlem tarihi at. Update görmeyen kayıtlar silinmiştir. 

    Yada gün içinde çok kez çalıştırıyorum vs diyorsan check isimli bir fieldın olsun. İşleme başlamadan önce tüm check fieldlarını 0 yaparsın. Her işlem yaptığına 1 koyar işlem sonunda tüm 0 olanları silersin. 

    Birkaç yöntem daha sayarım ama onlar fazla kod hammeliyesi gerektirir. 

  5. KısayolKısayol reportŞikayet pmÖzel Mesaj
    Böcüklerin Efendisi
    krypt
    krypt's avatar
    Kayıt Tarihi: 05/Mart/2004
    Erkek

    @DuPi tam anlayamadım hocam biraz açar mısın?

    @S2buyuk İkinci yazdığın aklıma yattı hocam bir deneyeceğim.


    while (1<2)
  6. KısayolKısayol reportŞikayet pmÖzel Mesaj
    DuPi
    DuPi's avatar
    Kayıt Tarihi: 21/Ağustos/2005
    Erkek

    hocam şöyleki,

    mesela webte bir kayıt sildin. onun sql kodunu veya o kaydı sildiğine dair bilgiyi başka bir tabloya atsın. (tablo adı a olsun)

    localdeki programın her güncellemede a tablosunu kontrol edip. ordaki işlemleri localde ki veritabanında da işlesin. ( yaptığı işlemleri sonradan ya silsin yada check ile yaptığını belirtsin)

     


    Ne zaman birşey öğrenmek istesem, Birden Vaktim Kalmıyor ?
  7. KısayolKısayol reportŞikayet pmÖzel Mesaj
    end
    end's avatar
    Kayıt Tarihi: 16/Ekim/2016
    Erkek
    krypt bunu yazdı

    Scraper bot ile bir siteden ürün çekip SQLite veritabanına kaydediyorum. Ürünleri "INSERT OR REPLACE" ile giriyorum böylece yeni ürünler veritabanına eklenirken, değişiklik yapılanlar veritabanında da değişiyor. Ancak problem sitede stokta kalmayan ürünler. Siteden silinen ürünlerin veritabanından da silinmesini hangi yolla sağlayabilirim? Aklımda bir yöntem var ama oldukça kıllı. Fikirlerinize açığım.

    veritabanından dump alıp her ürünü site içerisinde aratmak arta kalan ürünlere kalayı basmak

    kıllı olan bu mu acaba

    çözebilduysanız açıklar mısınız kafama takıldı 

     

    end tarafından 02/Oca/17 15:15 tarihinde düzenlenmiştir

    0x0480 takilin madem ﷽﷽﷽
  8. KısayolKısayol reportŞikayet pmÖzel Mesaj
    Böcüklerin Efendisi
    krypt
    krypt's avatar
    Kayıt Tarihi: 05/Mart/2004
    Erkek

    Aklimdaki fikir neydi acaba unuttum. Olayı s2buyuk'un ikinci yazdığı şekilde hallettim. Gayet basit ve işimi görüyor. 


    while (1<2)
Toplam Hit: 1358 Toplam Mesaj: 8
sqlite veritabanı senkronizasyon