Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Produkty - powiazania., Jak uniknąć redundancji?
anas
post
Post #1





Grupa: Zarejestrowani
Postów: 172
Pomógł: 0
Dołączył: 22.09.2002
Skąd: Gorzów Wlkp

Ostrzeżenie: (0%)
-----


Witam.

Mam problem natury teoretycznej. Jak rozwiazac nastepujacy problem:

- Jest w pewnej bazie tabela ktora reprezentuje produkty o np. takiej strukturze:

- ProduktID
- GrupaTowarowaID
- Nazwa
- itd...

i teraz miedzy produktami moze zajsc relacja taka ze - jeden produkt powiazany jest z wieloma innymi, ale inny produkt moze byc powiazany rowniez w wieloma innymi rowniez z pierwszym produktem ktory ma juz powiazania:

ja rozwiazanie widze w stworzeniu tabeli ktora bedzie przechowywala klucze produktow ktore sie ze soba wiaza:

Przykladowa struktuta takiej tabeli:

- ProduktID
- ProduktID2

i teraz jak mamy jakies produkty to bedzie to wygladalo tak

ProduktID | ProduktID2

1 | 2
1 | 3
1 | 4
1 | 5
1 | 15
15 | 1
15 | 2
15 | 3
2 | 1
2 | 15

I juz widzimy ze 1 polaczone jest z 15, a pozniej 15 z 1 -> i tutaj juz mamy redundancje danych - za to produkt o ID = 2 polaczony jest z produktami o ID = 1 i 15 gdzie wyzej 15 i 1 byla juz polaczona z 2... Jak uniknac tego problemu?

Z gory dzieki za kazda podpowiedz.

Ps. Sprawdzanie czy cos juz jest w jednej ze stron powiazania nie wchodzi w gre - chyba ze na poziomie bazy danych w jakis prosty i optymalny sposob - tak zeby szybko dalo sie wyciagnac dane np. w taki sposob:

  1. SELECT Wartosc AS ProduktONumerze, produktID2 AS PowiązanyZ FROM powiazania WHERE produktID = wartosc


Pozdrawiam

anas
Go to the top of the page
+Quote Post

Posty w temacie
- anas   Produkty - powiazania.   22.10.2004, 14:32:25
- - dag   Spróbuj wszystko w jednej tabeli: - ProduktID - G...   22.10.2004, 15:48:24


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 23.08.2025 - 16:07