merhaba arkadaşlar phpmyadminde spor diye tablom var ben buna 150 ve daha fazlası sutun eklemem lazım, onca sutun ne derseniz sporda iy ms korner ilk gol , alt üst, handikaplar,gibi vs. bir çok içerik ekletmem lazım
iş spor olunca 5 ayda nerdeyse 20000 veri ekleniyor ,bu durum mysql ağırlamasına sebep olurmu en mantıklı ne yapmak lazım?
phpmyadmin tabloda sutun sayısı fazla olursa ne olur?
9
●228
- 12-02-2020, 14:29:47Hocam kanımca elden geldikçe normalizasyona uygun tutmanız gerek tabloları. "veritabanı normalizasyon" gibi aratarak daha iyi öğrenebilirsiniz. Ne kadar normalizasyon kurallarına uygun olursa o kadar mysql zorlanmaz diye düşünüyorum. Günümüzde ne örnekler var mysql'i ağlatması gereken ama son derece hızlı olan.
Kolay gelsin - 12-02-2020, 15:10:50saydım toplamda 126 sutun oluyoremrecanozkan adlı üyeden alıntı: mesajı görüntüle
, veritabanı normalizasyon araştırdım da pek sorun çözücü gibi gelmedi
mesela veritabanında maçta toplam golleri tek tek sutunlarda tutuyorum bunun gibi toplam 126 sutun
05golalt
05golust
15golalt
15golust
25golalt
25golust
35golalt
35golust
45golalt
45golust
55golalt
55golust
ben bunu goller diye sutun açıp eklerken sırası ile virgül koyarak ekletmek veritabanını rahatlatırmı yoksa rahatlatmazmı ?
11.0,1,25,5,50,11,00,1,70,2,20,3,30 - 12-02-2020, 16:59:05Şöyle de yapabilirsin ; Maç ismini maclar diye bi tablo oluştur oraya kaydet. Golleri de maçın id sini göre goller diye bi tablo oluşturup oraya kaydedebilirsin.
maclar
id ---- macadi
1 ----- Galatasaray - Fenerbahçe
goller
id - gol_dakikasi - macid
123 -- 20 -- 1
Çekerkende goller tablosundan macid si o maça ait olan id ye göre çektirebilirsin.tarantula901 bunu beğendi.1 kişi bunu beğendi. - 12-02-2020, 20:22:54Performans olarak bir sey diyemem ama best practice olarak kotu bir yaklasim olur.Konya adlı üyeden alıntı: mesajı görüntüle
Spor tablom dedigini eger maclarin tablosu ise soyle yapabilirsin;
events, event_odds, odds dye tablolarin olur.
odds tablosuna iy, ms, alt, ust gibi degerleri kayit edersin.
event_odds tablosuna ise event_id, odds_id, value seklinde kayit edip temiz bir sekilde tutabilirsin. - 12-02-2020, 20:37:03Oran isimlerini ayrı bir tabloada tutarak maç ile oran tablosu arasında pivot tablo kullanıp yapmanız en doğru yol olacaktır hocam.
Yani sütun olarak tutmaktansa satır olarak kaydedeceksiniz ve ilişkisel veritabanının yaratılma amacına uygun şekilde kullanmış olacaksınız.
YILMAZ isimli arkadaşın verdiği örnekte olduğu gibi. - 12-02-2020, 21:13:45hocam demek istediğinizi tam olarak anlıyamadım spor neredeyse hepsi maçların oranları oran olmayan sadece tarih saat bayrak lig mackodu gibi 3-5 sutun geri kalanı tamamen oran sutunu aşağıda spor tablosundaki sutunların bir kısmını yazdım (toplam 126 sutun var) bu durumda dediğiniz mantık nasıl işliyecek?YILMAZ adlı üyeden alıntı: mesajı görüntüle
id hafta mackodu tarih saat bayrak lig mbs sms1 sms2 evsahibi misafir ms1 msx ms2 iy1 iyx iy2 iy05galt iy05gust iy15galt iy15gust iycs1x iycs12 iycsx2 ikiy1 ikiyx ikiy2 tek cift kgvar kgyok 15golalt 15golust alt25 ust25 35golalt 35golust bxc b2c x2c sifir1gol 23gol 45gol 6gol birdenbir birdensifir birdeniki sifirdanbir sifirdansifir sifirdaniki ikidenbir ikidensifir ikideniki skor1Ms10 skor1Ms20 skor1Ms30 skor1Ms40 skor1Ms50 skor1Ms21 skor1Ms31 skor1Ms41 skor1Ms51 skor1Ms32 skor1Ms42 skor1Ms52 skor1Ms43 skor1Ms53 skor1Ms54 skorxMs00 skorxMs11 skorxMs22 skorxMs33 skorxMs44 skorxMs55 skor2Ms01 skor2Ms02 skor2Ms03 skor2Ms04 skor2Ms05 skor2Ms12 skor2Ms13 skor2Ms14 skor2Ms15 skor2Ms23 skor2Ms24 skor2Ms25 skor2Ms34 skor2Ms35 skor2Ms45
hocam spor tablom zaten nerededeyse tamamı oranlardan oluşuyor, pivot tablo nedir hocam ?coder63 adlı üyeden alıntı: mesajı görüntüle - 12-02-2020, 23:21:20Pivot tablo mysql de 2 veya daha fazla tablodaki verileri birbiri ile eşleştiren tablolara verilen addır hocam.
user tablosu ile city tablosu arasında bağ kurarken user_city adında bir tablo oluşturup ikisi arasında bağ kurabilirsiniz.
Veya user ile başka herhangi bir tablo arasında bağ kurulacaksa user_any adında tablo oluşturup user_id, model, model_id şeklinde tanımlamalar yaparak kullanılabiliyor.
, veritabanı normalizasyon araştırdım da pek sorun çözücü gibi gelmedi