Novo

Forum kao aplikacija na telefonu

Dodajte forum na početni ekran i koristite ga kao aplikaciju, sa menijem na dnu ekrana.

  • 3 odgovora
  • 3.480 pregleda

Najnovija ↓

Spasavanje sastavnice u bazi 15.11.2013. u 16:08 · pre 157 meseci #1
Pozdrav svima!

Naime scenario je sljedeci:

Imam tabelu `komponenta` u kojoj se cuvaju odredjene informacije o komponentama (`id`, `opis`, `kolicina`, `cijena`...)
Imam tabelu `podsklop` u kojoj se cuvaju odredjene informacije o podsklopovima (`id`, `opis`, ...)

E sad, svaki podsklop se moze sastoji od odredjenih komponenata, ali i podsklopova.

Trenutno je podsklop zapisan na nacin da se u tabelu:

- `podsklop_sastav` (`id`, `id_podsklop`, `id_komponenta`, `kolicina`) upisuje sastav osnovnog podsklopa, odnosno onog koji se sastoji samo od komponenata. Napominjem da se jedan osnovni podsklop moze sastojati od ~100 komponenti.

Primjer zapisa u ovoj tabeli za podsklop sa id=1 je:

`id` | `id_podsklop` | `id_komponenta` | `kolicina`
--------------------------------------------------
1 | 1 | 1 | 1
---------------------------------------------------
2 | 1 | 2 | 2
---------------------------------------------------
3 | 1 | 3 | 3


Primjer zapisa u ovoj tabeli za podsklop sa id=2 je:

`id` | `id_podsklop` | `id_komponenta` | `kolicina`
--------------------------------------------------
4 | 2 | 4 | 2
---------------------------------------------------
5 | 2 | 5 | 4
---------------------------------------------------
6 | 2 | 6 | 6


- `podsklop_sastav2` (`id`, `id_podsklop_parent`, `id_podsklop_child`, `kolicina`) upisuje sastav podsklopa koji se sastoji od drugih podsklopova

Primjer zapisa u ovoj tabeli za podsklop sa id=3 je:

`id` | `id_podsklop_parent` | `id_podsklop_child` | `kolicina`
------------------------------------------------------------
1 | 3 | 1 | 1
-------------------------------------------------------------
2 | 3 | 2 | 2
-------------------------------------------------------------

Slicna je situacija i sa proizvodima, koji se sastoji od odredjenih podsklopova i komponenti.

Da li bi bilo bolje/efikasnije rjesenje da se u tabelu `podsklop` doda polje u kome bi se upisivali uredjeni parovi (id_komponenta,kolicina) i na taj nacin se cuvala sastavnica podsklopa.
Re: Spasavanje sastavnice u bazi 18.11.2013. u 19:00 · pre 157 meseci #2
Ja bih u jednu stavio tabelu stavio "komponentu", "podsklop", "proizvod", a u drugu tabelu samu relaciju izmedju entiteta u prvoj tabeli (to jest "sastavnicu" - id, parent_id, kolicina ).
To ti daje mogucnost dodavanja dodatnih nivoa np. neki "poluproizvod" i sl.
Re: Spasavanje sastavnice u bazi 18.11.2013. u 22:21 · pre 157 meseci #3
ovo sto je farmaceut rekao je kako bih ja radio .. tj malko drugacije

object: object_id, object_type_id, object_name, .. object_stagod
object_type: object_type_id, object_type_name (enum:komponenta, podsklop, ..)
object_object: object_id, component_object_id

Potpis
arhimed
http://www.mysql.rs/ | http://elco.crsndoo.com/
Re: Spasavanje sastavnice u bazi 30.01.2014. u 13:49 · pre 155 meseci #4
Ok, hvala mnogo na odgovorima!

Ono sto me na neki nacin uslovljava da ovo ne koristim jeste cinjenica da svaka komponenta ima cijenu, tako da se prilikom svakog prikazivanja bilo proizvoda, bilo podsklopa, mora prikazivati ukupna cijena. Posto broj komponenata zna biti prilicno veliki (do 100 komada za podsklop, a za proizvod i do 2-3 hiljade) onda je i samo preracunavanje cijene dugotrajan posao.

Iz tog razloga, koliko je ispravan koncept da tabela `podsklop` ima polja `id`, `sastav`, `cijena`, ...., i da se u polju `sastav` cuva struktura podsklopa u JSON formatu, a da se cijena preracunava u aplikaciji i upisuje u polje `cijena` prilikom svake izmjene?
Znam da nema neke pretjerane veze, ali aplikacija je radjena u C#-u.
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme