-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Elvin Şiriyev @ 15-04-2010 10:37: > Oturumu hızlıca okumaya çalışdım. alakası varsa (ve hatta yoksa bile) bu > konunun öğrenilmesi gereklidir: > http://dev.mysql.com/tech-resources/articles/hierarchical-data.html
yeni okudum bende konuyu, aynı sayfaya işaret edecektim. yalnız dikkat edilmesi gereken bir nokta var, mysql hiyerarşik verileri tek query ile gösterme yeteneğine sahip değil. bunun yerine subquery'ler ile çalışmak gerekiyor ve subquery sayılarını siz belirliyorsunuz, yani sonsuz miktarda sub category yaratmak maalesef mümkün olamıyor. mümkün olanlarda ise şöyle bir problem baş gösteriyor, en azından benim ihtiyacım olan şey şöyleydi, bir adet stok ağacımız var, mesela şöyle gidiyor; Elektrik > Şalt Malzemeleri > W Otomatlar > 1x6A Otomat gibi, bunu göstermek istediğinizde şöyle bir query yazıyorsunuz; SELECT * FROM Kategori LEFT JOIN Kategori AS subKategori ON subKategori.Sahip = Kategori.Id LEFT JOIN Kategori AS subsubKategori ON subsubKategori.Sahip = subKategori.Id ama bunu elle müdahale etmeden sınırsız hale getiremiyorsunuz, hatta şunu da yapamıyorsunuz, mesela bu kategorileri sıralatırken mesela ben sadece W Otomatların toplam stok maliyeti içerisinde toplamda ne kadar tuttuğunu görmek istiyorum, bunun için sadece W Otomat'a tıklamam yetmiyor, bir de oturup ona özel bir query vs yazmam gerekiyor -otomatik olmuyor maalesef, stok yapımız biraz karmaşık-, gibi detaylar var. bir de şu problem oldu, mesela bir ürünü komple taşımak istiyorum, ve bunların her biri benim için bir ürün kategorisi, SELECT kutusunun içinde şunu da gerçekleştiremedim; Elektrik Elektrik > Şalt Malzemeleri Elektrik > Şalt Malzemeleri > W Otomatlar Elektrik > Şalt Malzemeleri > Termik Şalterler Elektrik > Fanlar ... ... vs, örnekler çoğaltılabilir. Genel olarak subKategori ortamını oluştururken aşırı dinamik bir yapı oluşturamıyorsunuz, daha çok sabit seçenekler mümkün. Aşırı dinamik yapılar için ise *mutlaka* birden fazla query ile çalışmak zorunda kalıyorsunuz. Ha, ne kadar tercih edilebilir orası ayrı, sırf bu iş için ayırdığınız bir sunucunuz vardır, kör topal idare ediyordur ama bir kaç bin üründen oluşan bir ürün ağacınız varsa gerçekten can sıkabilir. - -- Omer Barlas [email protected] -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.10 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iEYEARECAAYFAkvG5U4ACgkQdGekJptkwetpvQCeK3b74CB9dMJqBtlyZfht24yY 2zcAn0/aEbyocvGu8p46A78l1hDbXwbP =Sqku -----END PGP SIGNATURE----- _______________________________________________ Linux-programlama mailing list [email protected] https://liste.linux.org.tr/mailman/listinfo/linux-programlama Liste kurallari: http://liste.linux.org.tr/kurallar.php
