Sqlite mutabık olma

try except kısmı veriatabanınakayıt fonksiyonunda olmalı, ayrıca try except'leri mümkün olduğunca dar tutmak lazım.

1 Beğeni

Butun veritabanini degil, sadece ilgili kolonu veya indexini taramayi gerektiren bir yontem. Bunlarin tamamini da her yontem aramak zorunda, yoksa cift isim taranmayan bir kisma denk geldiginde ne olacak?

(Database’i ayni anda tek kisinin kullandigini varsayarsak) tutarsizligin nasil olusabilecegini dusunemedim?

UNIQUE kisitlamasi cogu implementasyonda bir indexle beraber geliyor fakat standart veya SQLite bu konuda ne diyor, bilmiyorum.

Indexler de dict ve set gibi bedeli yazma zamanina aktararak okuma zamanini kisaltan veriyapilari/algoritmalar kullaniyorlar, fakat dict/set cogunlukla hash table kullanirken database indexleri cogunlukla binary tree kullaniyor.

Baska bir ilginc durum da database’lerin index’leri kullanma zorunlulugu olmamasi. Dogrudan tabloyu okumanin index’i taramaktan daha hizli olacagini dusundukleri noktada ilkini yapmakta serbestler.

Kisacasi optimizasyonun temel maximlerinden birine geliyoruz: Sen yapmak istedigini en basit sekilde ifade et, optimizasyonu isi daha iyi bilen katmanlara birak.


UNIQUE kisitlamasini programda yapilan kontrole tercih etmemek icin bir sebep var, o da kisitlamanin altindaki kurallarin karmasik olmasi: “Mehmet” ile "Memet"i veya Ahmet ile Αhmeti ayni isimden saymak istiyorsak bu kurallari database seviyesine indirmek her zaman kolay olmayabiliyor.

Bunu dusunmeni saglayacak neler olctun?

Bir de: Siniri binlerce kisilik programlara mi cektin? Milyonlarca kisilik programlarda binlerce kisilik programlarda yapilmis cozumler de sorun cikartacak. Milyarlarca kisilik programlarda, milyonlarca kisilik programlarda yapilmis cozumler sorun cikartacak.

2 Beğeni