![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 289 Pomógł: 1 Dołączył: 2.11.2007 Ostrzeżenie: (0%) ![]() ![]() |
Witam
Chcę w swoim serwisie internetowym system kategorii 3 rzędu (tzn. wybieramy najpierw 1, potem 2, a na końcu 3). Na początku chcę przypisać do 3 zmiennych listę kategorii 1, 2 i 3 rzędu w postaci tablicy (aby później ewentualnie wrzucić to w cache), a następnie przy pomocy pętli sprawdzać, czy się zawierają. Struktura tabeli z kategoriami id | parent | parent2 | nazwa | seonazwa | ile
Wszystko niby działa i generuje wynik mniej więcej w takiej postaci: Kategoria_glowna_1 -> Podkategoria_pierwsza1 ---> Podkategoria_druga1 ---> Podkategoria_druga2 -> Podkategoria_pierwsza2 -> Podkategoria_pierwsza3 Kategoria_glowna_2 Kategoria_glowna_3 Jednak zastanawia mnie, czy nie za bardzo przekombinowałem z pętlami i czy takie rozwiązanie wydaje się optymalne. |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 1 233 Pomógł: 87 Dołączył: 6.03.2009 Ostrzeżenie: (40%) ![]() ![]() |
Ogólnie SQL nie nadaje się dobrze do przechowywania danych zorganizowanych hierarchicznie.
Lepiej nadaje się do tego XML albo jakaś lightowy container, np. JSON. W XML czy JSON swobodnie da się zapisywać co jest potomkiem czego, nie potrzeba żadnej nadmiarowości aby dodać kolejny element. Oczywiście są sposoby aby wydajnie przechowywać dane zorganizowane hierarchiczne w bazie SQL. http://www.google.pl/search?q=hierarchy+sql Przez grzeczność nie będę się pastwił nad zaprezentowanym przez Ciebie rozwiązaniem. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 3.10.2025 - 17:11 |