Struktura tabeli jak w tym przypadku to zrobic?

0

Witam,
Mam karte katalogową produktu i np pola:
1.ID
2. NAZWA
3. GRUPA
4.PODGRUPA

Tu sprawa jest prosta nazwa to zwykly tekst , grupa i podgrupa to wartosci wpisywane ze slownika (czyli slownik to osobna tabelka) wiec w tym przypadku mamy tabelke produkt, grupa i podgrupa i do tabeli produkt wpisujemy id pozycji grupa lub podgrupa.

I teraz problem.
Pole nr 5 ma byc polem zlozonym ze slownika(select)+cześć wpisywana z palca i przy jednym produkcie moze byc np 5 opcji przyklad:

Produkt: ID 1 Nazwa: MIG312
Grupa: Stal
Podgrupa: Stal nisktostopowa
Klasyfikacja: ISO389383 PL38333
ISO234234 PL323333
ISO232323 GT333232

Oczywiscie wartosci zmyslone.
Jak zapisac pole Klasyfikacja w tabeli produkt?
Ja to realizuje w taki nierelacyjny i brzyki sposob tzn. w tabeli klasyfikacja zapisuje te trzy ISO np

ID NAZWA
1 ISO389383
2 ISO234234
3 ISO232323

Z tego tworze ciąg:

1|PL38333;2|PL323333;3|GT333232 i taki zapis pakuje do pola klasyfikacja w tabeli produkt.

Poradzcie jak to ladnie zrobic?

0

Wpakuj to do osobnej tabeli w której będziesz miał
ID produktu
ID ze słownika ISO
Wartość z palca

  • ew liczba porządkowa jeśli dla dodatkowych danych ważna jest kolejność
0

b0bik, po cholerę cytujesz całego posta?

skoro korzystasz z (relacyjnych?) baz danych, powinieneś zrobić to relacyjnie - do tego zostały stworzone. Manewry typu 1|2|3 można czasem stosować, jeżeli ma to kluczowe znaczenie jeśli chodzi o wydajność

0

Bo się lepiej odpowiada jak masz przed oczyma pytanie, ale ok na przyszłość będe przed wysłaniem kasował.

0

A moze zrobic tak jest sobie tabelka produkt i tabelka klasyfikacja i mamy tak ze w tabeli produkt wpisujemy tylko ID klasyfikacji a tabela klasyfikacji wygflada tak:

  1. ID
  2. NAZWA IDO
  3. KOLUMNA 3
  4. KOLUMNA 4

Czyli mamy przejrzysta tabelke osobną a w glownej tabeli produktu trzymamy tylko 1 ID, tylko teraz pytanie jak zapisac jezeli ktos wybierze np 6 ISO, wtedy juz by musialo byc zrobione np 1|4|2|3|5|7
Czyli mielibysmy id rekordow w jednym polu txt. Inaczej jakos tego nie widze.

0

następny - po co pytasz jak i tak stosujesz własne wymysły

0
tomkiewicz napisał(a)

Manewry typu 1|2|3 można czasem stosować, jeżeli ma to kluczowe znaczenie jeśli chodzi o wydajność

akurat TEN problem imho nie wlacza sie do wspomnianej grupy... Zrob normalną relacyjną bazę danych, bez kombinacji. JAK to zrobić masz w większości książek traktujących o Postgresie czy MySQL...

0

Wymyslilem taka metoda aby utrzymac relacyjna baze.
Ogolem mam 3 tabelki jedna to produkt druga to klasyfikacja a ta łącząca sklada sie z dwoch pol , mianowicie:
id_produktu id_klasyfikacji

teraz w tabeli klasyfikacja moze byc obojetnie ile kolumn, i tak samo moze byc do jednego produktu rozna liczba rekordow z klasyfikacji np:

id_produktu id_klasyfikacji
1 1
1 4
1 10
4 3
4 10

Czyli do 1-ego produktu mam zapisane 3 klasyfikacje a do czwartego dwie i po sprawie.
Dobre rozwiazanie?

tomkiewicz napisał(a)
tomkiewicz napisał(a)

Manewry typu 1|2|3 można czasem stosować, jeżeli ma to kluczowe znaczenie jeśli chodzi o wydajność

akurat TEN problem imho nie wlacza sie do wspomnianej grupy... Zrob normalną relacyjną bazę danych, bez kombinacji. JAK to zrobić masz w większości książek traktujących o Postgresie czy MySQL...

No wlasnie pytam jak ta baze zrobic a dostaje odpowiedz zrob baze relacyjna.

0
Glina napisał(a)

No wlasnie pytam jak ta baze zrobic a dostaje odpowiedz zrob baze relacyjna.

b0bik napisał(a)

Wpakuj to do osobnej tabeli w której będziesz miał
ID produktu
ID ze słownika ISO
Wartość z palca

  • ew liczba porządkowa jeśli dla dodatkowych danych ważna jest kolejność

czytanie też sztuka ...

0
Glina napisał(a)

No wlasnie pytam jak ta baze zrobic a dostaje odpowiedz zrob baze relacyjna.
Napisałem, żebyś przeczytał jakąkolwiek książkę o MySQL :>. Sorry, takie zagadnienia (jak działają bazy relacyjne) to są nawet w lepszych kursach. Nie bierz tego do siebie, ale przeczytanie jakiegoś dobrego kursu rozwiąże większość Twoich problemów z bazami :)

0
tomkiewicz napisał(a)
Glina napisał(a)

No wlasnie pytam jak ta baze zrobic a dostaje odpowiedz zrob baze relacyjna.
Napisałem, żebyś przeczytał jakąkolwiek książkę o MySQL :>. Sorry, takie zagadnienia (jak działają bazy relacyjne) to są nawet w lepszych kursach. Nie bierz tego do siebie, ale przeczytanie jakiegoś dobrego kursu rozwiąże większość Twoich problemów z bazami :)

Zauwazam ze na wiekszości forum zwlaszcza dotyczacym programowania odpowiedzi sa w stylu: przeczytaj ksiazke, poszukaj na google, zrob studia to sie nauczysz. Wg mnie forum jest po to zeby nakreslic problem a nie Od razu cwaniakowac. Fakt nie zauwazylem odpowiedzi Bobika ktory dal konkretna odpowiedz.
poza tym na moje pytanie powinna byc odp np taka, zrob czlowieku dodatkowa tabelke i w niej przechowaj id produktu i id klasyfikacji i koniec. (czyli odpowiedz Bobika) reszta postow jest niepotrzebna :-)
Dziekuje za odpowiedzi , bez odbioru.

tomkiewicz napisał(a)
Glina napisał(a)

No wlasnie pytam jak ta baze zrobic a dostaje odpowiedz zrob baze relacyjna.
Napisałem, żebyś przeczytał jakąkolwiek książkę o MySQL :>. Sorry, takie zagadnienia (jak działają bazy relacyjne) to są nawet w lepszych kursach. Nie bierz tego do siebie, ale przeczytanie jakiegoś dobrego kursu rozwiąże większość Twoich problemów z bazami :)

Wiem jak dzialaja bazy relacyjne i wcale nie pytalem o to zeby mi ktos opisywal jak dzialaja bazy relacyjne tylko chodzilo mi o konkretny praktyczny problem.

0
Glina napisał(a)

poza tym na moje pytanie powinna byc odp np taka, zrob czlowieku dodatkowa tabelke i w niej przechowaj id produktu i id klasyfikacji i koniec. (czyli odpowiedz Bobika)
przecież masz taką - o co ci ciągle chodzi?? Chcesz się wyżalić i ponażekać??

reszta postow jest niepotrzebna :-)

a zwłaszcza twoje

0

po prostu nie zauwazyelm odpowiedzi na moje pytanie. Czy Od razu musze byc okladany glupimi tekstami?
Przepraszam o Wielcy Bogowie!

P.S.
Prośba do admina o usuniecie tego wątku.

0

Ale sie zrobiła zadyma ;)

0
b0bik napisał(a)

Ale sie zrobiła zadyma ;)

Jakiś taki dziwny dzień jest dziś :-)
Przepraszam ze troche sie uniosłem ale jak pytam o konkretny przykład a gość mi mowi zebym przeczytal książkę o mysql i bazach relacyjnych to jak tu mozna siedziec spokojnie.

Ostatnio napisalem na forum z telefonami o rade jak wlaczyc bluetootha zeby zgrac dane przed oddaniem do serwisu a ekran mam zepsuty czyli chodzilo mi o wciskanie klawiszy po kolei. Gosc mi odpisal ze najlepiej jak zaniose do serwisu bo to tasma na 1000% :-)

0

gościu, mowilem, zebys tego az tak do siebie nie brał :). Napisałem o książce, bo forum jest owszem - od rozwiązywania problemów, ale nie podstawowych (od tego jest dział newbie). Skoro znasz zasady relacyjnych baz danych, to powinieneń taką zbudować w praktyce...

I nie uważam się za eksperta, zdaje sobie sprawę, że jeszcze mi trochę brakuje...

1 użytkowników online, w tym zalogowanych: 0, gości: 1