Autorius Tema: Padėkit sugalvoti duombazės struktūrą  (Skaityta 88 kartus)

Neprisijungęs Esnyper

  • Naujokas
  • *
  • Įrašai: 98
  • Karma: +0/-0
    • Žiūrėti profilį
Padėkit sugalvoti duombazės struktūrą
« Įrašytas: 2014-06-03 15:23:22 pm »
Seniai čia berašiau, bet turiu problemėlę, tikiuosi padėsit išspręsti.

Parduotuvė turi A prekę. Ta A prekė turi a ir b dalykus. Tie dalykai turi atskirą savo lentelę su vardas, pozicija, aktyvus ar ne ir t. t.

Kokią daryti duombazės struktūrą? Kaip geriausiai būtų formuoti užklausą, kad užkraunant prekę A iš duombazės būtų ištraukiami a ir b dalykai?

Galvojau pridėti prie tos dalykų lentelės „product_ids“ laukelį, kuriame įrašyčiau tų prekių ID per kablelį, kurios yra tas dalykas priskirtas. Bet tada kaip ištraukti tuos dalykus, jei turiu tik tos užkraunamos prekės ID?

Nežinau ar suprantamai paaiškinau, bet jei neaišku parašykit, pabandysiu papaišyti ar suprantamiau paaiškinti :-[
« Paskutinį kartą keitė: 2014-06-03 15:26:38 pm sukūrė Esnyper »

Prisijungęs Lukas Liesis

  • Administratorius
  • Herojus
  • ******
  • Įrašai: 7330
  • Karma: +223/-15
    • Žiūrėti profilį
    • mano CV
Ats: Padėkit sugalvoti duombazės struktūrą
« Atsakymas #1 Įrašytas: 2014-06-03 15:52:29 pm »
patarimas ateiciai: zymeti dalykus raidemis - ok, tai dazniausiai padeda, tacaiu zymeti 2 skirtingus dalykus ta pacia raide - tikrai ne gera mintis. T.y. perrasant tavo sakini:

Parduotuvė turi A prekę. Ta A prekė turi a ir b dalykus

Parduotuvė turi prekę P1. Ta P1 prekė turi D1 ir D2 dalykus :-)

o  dbar apie struktura, tau reikia one-many relation'o. tai siulau daryt taip:

lenta preke
lenta dalykas (siulau kitaip vadint, nes sitas pavadinimas neatspindi apie ka eina kalba "dalykas" gali buti betkas)

preke.id
preke.name
...

dalykas.id
dalykas.preke_id
dalykas.name
...

dalykas lenta turi preke_id lauka kuriame yra id prekes, kuriai priklauso tas 'dalykas', kaip minejau, siulau nevadinti nieko tokiais bendrais zodziais kaip 'dalykas', nes tai is esmes nieko nesako. patogu yra lentas pavadinti dar nurodant herarchija:

preke.id
preke.name
...

preke_parametras.id
preke_parametras.preke_id
preke_parametras.name
....


tada visad bus aisku, kad sitoj lentoj nera saugomi userio parametrai ar dar nezinia kieno, o butent prekes.

have fun!
Jūsų draugas, kolega ir puslapio administratorius,

Lukas.

Manualai.lt Facebooke
serveriai.lt 50% nuolaida!
Free Hosting
Free Templates

Neprisijungęs ganjabest

  • Dalyvis
  • **
  • Įrašai: 930
  • Karma: +34/-1
  • Povilas Stankevičius
    • Žiūrėti profilį
Ats: Padėkit sugalvoti duombazės struktūrą
« Atsakymas #2 Įrašytas: 2014-06-08 01:46:58 am »
Jeigu kalbi apie preke ir jos parametrus(dydis, spalva ir t.t.) tai viena lentele prekes, kita prametrai, trecia prekiu parametrai. prekiu parametrai lentele:

id
prekes_id
parametro_id

Jeigu kalbi apie preke ir konkreciai tik jei skirtus dalykus ir jeigu reiksmiu tik po viena, nematau prasmes isvis deti i antra lentele. O jeigu nori tai vistiek ta pati logika, kaip ir Lukas sake:

id
prekes_id
Visi žmonės kaip žmonės - tik aš vienas kaip dievas!

Manualai.lt Forumas

Ats: Padėkit sugalvoti duombazės struktūrą
« Atsakymas #2 Įrašytas: 2014-06-08 01:46:58 am »