[Mysql/PHP] Velden > Veld

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Ik ben een N00b op dit gebied. Ik probeer zoveel mogelijk op het internet te zoeken, maar in dit geval weet ik niet waar ik naar moet zoeken.

Situatie:
Ik heb een mysql database met onder andere de volgende velden:
eps.regulars
eps.guest
eps.cast


Nu komt het gedeelte waar ik niet uitkom. De inhoud van de bovenstaande velden moeten worden opgehaald uit een andere tabel "actors". Maar in de bovenstaande velden moeten meerdere waarden komen uit de tabel actors.

Voorbeeld:
In tabel actors heb ik:
Steven Seagal
Jennifer Lopez
George Clooney
Jennifer Aniston
Jackie Chan

En ik wil in eps.regulars hebben:
Steven Seagal, Jackie Chan

Weet iemand of dit mogelijk is, en waar ik op het internet kan zien hoe ik dit zou moeten aanpakken??

Ik hoop dat jullie begrijpen wat ik bedoel. Zo niet, dan zal ik meer informatie verschaffen.

Acties:
  • 0 Henk 'm!

  • drm
  • Registratie: Februari 2001
  • Laatst online: 09-06 13:31

drm

f0pc0dert

Volgens mij moet je even goed na gaan denken over een ontwerp van je database...

Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Hoezo? Is deze manier niet goed? In de velden komen namelijk steeds weer verschillende actors, en aangezien een aantal vaak zullen voorkomen, heb ik geen zin om het telkens opnieuw in te voeren. Op deze manier hoef ik het maar 1x in te voeren. Of zie ik het verkeerd?

Acties:
  • 0 Henk 'm!

  • Goodielover
  • Registratie: November 2001
  • Laatst online: 16-09 09:38

Goodielover

Only The Best is Good Enough.

Stel dat je verder niets wilt met de namen van die mensen, kan je ze wel in één veld gaan opnemen. Het is dan weliswaar niet netjes genormaliseerd, maar daar heb je dan ook geen behoefte aan.
Als dit zo is, dan heb ik meer info nodig van de bron tabel om te kunnen bepalen of en zo ja hoe dit kan.
Daarnaast moet je even aangeven of het een eenmalige conversie of een runtime query moet zijn.

Volgens mij heb jij de volgende tabellen nodig
1. Actor
2. Rol
3. TV-Serie

In 1 neem je de naam van de acteur/actrice op en wat je nog meer van de persoon wilt bijhouden
Bij 2 neem je ID van actor op, samen met de soort rol en de ID van de TV-serie
Bij 3 neem je de TV-serie op met alles wat je daarvan wilt bijhouden aan enkelvoudige waarden.
Je moet bedenken dat voor ieder meervoudig gegeven dat je wilt bijhouden je een aparte tabel moet maken.

PS begrijp ik het trouwens goed dat je drie velden wilt maken, want ik zou er ook uit kunnen lezen dat je eigenlijk tabellen bedoelt. Een database heeft namelijk tabellen en een tabel heeft velden.

[ Voor 49% gewijzigd door Goodielover op 22-11-2002 16:11 ]


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Ik heb in mijn ontwerp 7 tabellen, waarvan in dit geval maar 2 relevant zijn. Het gaat om de tabellen: Eps & Actors.

In de tabel Eps heb ik een aantal velden, waaronder:
Regulars
GuestStars
Cast

En in de tabel Actors heb ik deze velden:
ActorName
Caracter
IMDB

De waarden van de 3 velden uit tabel eps moet worden opgehaald uit actors.actorname.
En het moet een runtime query zijn.

Acties:
  • 0 Henk 'm!

  • Goodielover
  • Registratie: November 2001
  • Laatst online: 16-09 09:38

Goodielover

Only The Best is Good Enough.

Kijk maar even naar mijn post hierboven, die had ik ge-edit

Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Oke, ik zie waar je op doelt. Is in ieder geval beter dan mijn ontwerp, want nu wordt alles apart opgeslagen.

Uiteindelijk wil ik met php een formulier maken met all gegevens van 1 afleveringen, die zoals jij het beschrijft, in verschillende tabellen staan. Dan zal ik het gewoon moeten koppelen.

Oke, bedankt voor je hulp. Ik kom er nu wel uit denk ik.

Acties:
  • 0 Henk 'm!

  • Anders
  • Registratie: December 2000
  • Laatst online: 13-09 18:52
Goodielover was me voor :) Ik was net bezig met een mooi plaatje van de structuur toen mijn PC crashte (altijd leuk, die M$ updates, NOT):

Afbeeldingslocatie: http://www.paksoi.nl/out/tweakers/dbstructure001.gif

De middelste is de koppeltabel, tabel 2 van goodielover dus, die verwijst naar zowel de episodes-tabel als de actors-tabel, en daarbij in het veld "role" aangeeft of het een regular- of gastoptreden betreft.

De essentie van deze opzet met een aparte tussentabel is dat je aan 1 aflevering meerdere acteurs kunt verbinden, maar aan 1 acteur ook meerdere afleveringen: een many-to-many-relatie.

Ik spoor veilig of ik spoor niet.


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Ja, zo heb ik het nu ook gedaan.

Maar dan het volgende. Ik wil bepaalde rollen onderscheiden. Want in een aflevingen heb je 5 - 7 vaste acteurs, een aantal special guests en de rest van de cast. Hoe zou ik dat moeten doen? Op deze manier kan je namelijk geen onderscheid maken. In de formulier moet je ongeveer dit zien:

Episode

regulars:
actor1 rol
actor2 rol
actor3 rol

Special guest star:
actor4 rol
actor5 rol

Cast:
actor6 rol
actor7 rol
actor8 rol

Nu zou je gewoon 1 lijst hebben, dus:

Episode

Actors:
actor1 rol
actor2 rol
actor3 rol
actor4 rol
actor5 rol

Acties:
  • 0 Henk 'm!

  • Goodielover
  • Registratie: November 2001
  • Laatst online: 16-09 09:38

Goodielover

Only The Best is Good Enough.

Het veld rol geeft aan of het een regular/special guest/cast is.
Als je de naam in de serie wilt opnemen is een extra veld.
Als je in je DB slechts 1 serie opneemt, kan je die naam ook bij de acteur opnemen.
anders krijg je meer de volgende tabel-structuur
code:
1
2
3
4
acteur   ---> Rol <---- TV-serie
               |            |
               v            v
           Soort rol <--Episode

Hierbij heeft rol dus de naam in de serie
en geeft soort rol aan of het een guest/regular/cast was in die episode

[ Voor 62% gewijzigd door Goodielover op 22-11-2002 17:15 ]

Pagina: 1