Düzensiz Veriyi Veritabanına Ekleme İşlemi

Edit : Yazdığım sorunun cevabını buldum. Aynı işlemin devamında başka bir yerde takıldım ve yeni konu açmak istemediğim için bunun üzerinden yeni sorumu yazıyorum.

Bir siteden veri çekiyorum çektiğim veriler, adres, telefon, e-posta, web ve faks olmak üzere maksimum 5 adet. Bu verilerin sayısı ve içeriği duruma göre değişiyor. Örneğin bazen çekilecek veri sayısı 3 ve içerik adres, telefon , e-posta şeklinde iken bazen ise çekilecek veri sayısı 2 ve içerik adres, telefon şeklinde değişkenlik gösterebiliyor. Gelen verinin içeriğinin ne olduğunu if kontrolü öğrenip veritabanında hangi sütuna yazılabileceğini yapıyorum. Fakat çekilecek olan veri sayısı (max: 5) ve içeriği değiştiğinden veritabanına ekleme işleminde sorun yaşıyorum. Örneğin adres bilgisini veritabanına ekliyor telefon bilgisini bir alt satırdaki telefon sütununa ekliyor benim istediğim ise aynı satırdaki telefon sütuna eklemesi yani eklenen veriye ait tüm değişkenler aynı satırda yer almalı.

Umarım anlatabilmişimdir. Yardımcı olabilirseniz sevinirim. Yardımlarınız için şimdiden teşekkür ederim.

1 Beğeni

Kodunu paylaşabilir misin?

İlginiz için teşekkür ederim https://paste.ubuntu.com/24747391/ adresinden kodlara ulaşabilirsiniz.

Veritabanı konusunda pek tecrübem yok fakat kodlarınıza göre sorununuz if-elif yapısından kaynaklanıyor olabilir.

var = 200 if (x > 200): print("1 - Değer 200'den büyük") print(x) elif (x > 150): print("2 - Değer 150'den büyük") print(x) elif (var > 100): print("3 - Değer 100'den büyük") print(x)

Çıktısı:
2 - Değer 150'den büyük

3 koşul tarafından sağlansa da ilk elif’te gerçekleşen uygulanıyor, diğerleri uygulanmıyor.
Bu sebeple verilerinizin satır satır ekleme yaptığını düşünüyorum.

Yok eğer:

if ellif’lerde sıkıntı yok diyorsanız o zaman da boş olan verileri ayıklamanızı öneririm. Diyelim firma adı mevcut fakat telefon yok varsa telefon bilgisini ekle, yoksa kısa çizgi ekle gibi…Böylelikle bir alt satıra geçmez gibi alternatifler denenebilir.

if - elif ile yapabileceğim başka bir şey gelmiyor aklıma çünkü olasılıklar çok fazla. Ama boş olan alanlara - yazma fikri güzelmiş. Deneyeceğim bunu inşallah olur. Teşekkür ederim yardımınız için