muziek database
Een muzikant kan in meerdere bands spelen en meerdere instrumenten bespelen. Net als dat er meerdere labels gekoppeld kunnen worden aan een album, alleen hoe moet je dit realiseren?
Dit is wat ik tot nu toe heb:
• Band
o Bandnaam Primary Key
o Land
o Staat
o Plaats
o Website
• Album
o Titel Primary Key
o BandNaam Foreign Key
o Soort
o Platenmaatschappij Foreign Key
o Genre Foreign Key
o JaartalPublicatie
o Lengte
• Nummer
o Tracktitel Primary Key
o AlbumTitel Foreign Key
o Tracknummer
o trackLengte
• Muzikant
o Muzikantid Primary Key
o Voornaam
o Achternaam
o Geboortejaar
o Bandnaam foreign key
o Instrument Foreign Key
• Genre
o Genre Primary Key
• platenmaatschappij
o platenmaatschappij Primary Key
• Instrument
o Instrument
Gewijzigd op 27/05/2014 16:05:01 door Brian ten Pas
Werk met id's en je komt er wel!
Dat snap ik niet helemaal, want ik wil echt informatie in de database zetten over de bands en over de albums en dat lijkt me moeilijk te realiseren in twee tabellen.
dat maakt dat je in een later stadium de naam van een band zou kunnen aanpassen (dat gebeurt)
en werkt een stuk eenduidiger dan bijvoorbeeld
"Het goede doel", "Het goede Doel", etc
Stijn Quux op 27/05/2014 17:47:23:
Waarom zoveel verschillende tables? dit kan je realiseren met maar 2 tabels...
Werk met id's en je komt er wel!
Werk met id's en je komt er wel!
Met twee tabellen? Geintje zeker?
Je hebt voor elke entiteit een tabel nodig:
- muzikant
- band
- album
- nummer
Eventueel nog instrument en genre (niet noodzakelijk, kan wel).
Vervolgens heb je voor een aantal links tussen de entiteiten een koppeltabel nodig, omdat dat many-to-many relaties zijn. Zoals je zelf al stelt kan een muzikant in meerdere bands spelen. Maar een album is normaal maar van 1 band. Een nummer daarintegen, kan weer op meerdere albums staan.
Koppeltabellen die je dus in elk geval nodig hebt:
- band - muzikant
- album - nummer
Gewijzigd op 27/05/2014 21:25:34 door Erwin H
Ivo P op 27/05/2014 19:54:42:
ik zou in elk geval gaan voor numerieke primary keys
dat maakt dat je in een later stadium de naam van een band zou kunnen aanpassen (dat gebeurt)
en werkt een stuk eenduidiger dan bijvoorbeeld
"Het goede doel", "Het goede Doel", etc
dat maakt dat je in een later stadium de naam van een band zou kunnen aanpassen (dat gebeurt)
en werkt een stuk eenduidiger dan bijvoorbeeld
"Het goede doel", "Het goede Doel", etc
Dankje Ivo, dat zal ik zekers meenemen.
Erwin H op 27/05/2014 21:24:41:
Met twee tabellen? Geintje zeker?
Je hebt voor elke entiteit een tabel nodig:
- muzikant
- band
- album
- nummer
Eventueel nog instrument en genre (niet noodzakelijk, kan wel).
Vervolgens heb je voor een aantal links tussen de entiteiten een koppeltabel nodig, omdat dat many-to-many relaties zijn. Zoals je zelf al stelt kan een muzikant in meerdere bands spelen. Maar een album is normaal maar van 1 band. Een nummer daarintegen, kan weer op meerdere albums staan.
Koppeltabellen die je dus in elk geval nodig hebt:
- band - muzikant
- album - nummer
Stijn Quux op 27/05/2014 17:47:23:
Waarom zoveel verschillende tables? dit kan je realiseren met maar 2 tabels...
Werk met id's en je komt er wel!
Werk met id's en je komt er wel!
Met twee tabellen? Geintje zeker?
Je hebt voor elke entiteit een tabel nodig:
- muzikant
- band
- album
- nummer
Eventueel nog instrument en genre (niet noodzakelijk, kan wel).
Vervolgens heb je voor een aantal links tussen de entiteiten een koppeltabel nodig, omdat dat many-to-many relaties zijn. Zoals je zelf al stelt kan een muzikant in meerdere bands spelen. Maar een album is normaal maar van 1 band. Een nummer daarintegen, kan weer op meerdere albums staan.
Koppeltabellen die je dus in elk geval nodig hebt:
- band - muzikant
- album - nummer
Dankje Erwin. Ik heb les gehad over normaliseren en hoe ik met een database moet werken, maar niets over koppeltabellen.