ks.
object-relational mapping
bir programlama teknigi. sanirim boyle diyebiliriz. soyle ki; bir veriyi (genelde veritabanindaki bir veriyi) object oriented bir programlama dilinin veri tiplerine cevirmek icin kullanilir.
bi bok anlasilmadigini varsayaraktan devam edelim;
veritabaninda
string olarak hayatini devam ettiren bir veriyi, bu teknik ile, kullandiginiz dilin veri tiplerinden birine cevirip yazdiginiz kodun/sistemin/uygulamanin icerisinde rahatlikla kullanmanizi, manipule etmenizi saglar. boylelikle veritabanina baglanma, raw
sql ile query olusturma sonucunu okuma vs gibi islemleri kullandiginiz programlama dilinin
syntaxinden disari cikmadan halletmis oluyorsunuz.
gercek hayattan gercek bir ornek verecek olursak;
guzide sozlugumuzun arka planinda veritabani islemleri bu teknik ile halledilmektedir. isim vermek gerekirse
python programlama dilinin
django isimli
framework unun
orm i kullanilmaktadir.
hala tam olarak oturmadiysa buraya bir ornek kod birakalim:
normal sartlarda sql ile veritabaninda kullanici adi
ali olan bir kullaniciyi cekmek icin asagi yukari soyle bir
query yazmamiz icab eder:
---
raw sql query ---
select * from users_table where username='ali' limit 1;
---
raw sql query ---
igrenc. ancak orm kullandigimizda bu olay suna donusuyor:
---
django orm ---
user.objects.get(username='ali')
---
django orm ---
ha tabii ki iki yontem arasinda ciddi performans farkliliklari olabiliyor. bu tamamen programci olarak sizin degerlendirip almaniz gereken bir karardir. kritik ve yogun olarak kullanilan buyuk queryleri bazen orm yerine raw sql ile cekmek isteyebilirsiniz.