quote:Edit: zoals Ranja het dus doet...had geen zin om zo'n lange uitleg te maken
Op donderdag 15 mei 2003 15:14 schreef Darkysdust het volgende:[..]
Hoeft toch juist niet? Je zet 1 keer die Geforce2 in die tabel met een eigen id, en vervolgens koppel je die id in een andere tabel aan de computer.
quote:Dus voor iedere videokaart een aparte tabel
Op donderdag 15 mei 2003 15:14 schreef Darkysdust het volgende:[..]
Hoeft toch juist niet? Je zet 1 keer die Geforce2 in die tabel met een eigen id, en vervolgens koppel je die id in een andere tabel aan de computer.
quote:Dan krijg je in die andere tabel toch iedere keer het zelfde "ID-nummer" wat ook weer redundantie is........
Op donderdag 15 mei 2003 15:14 schreef Darkysdust het volgende:[..]
Hoeft toch juist niet? Je zet 1 keer die Geforce2 in die tabel met een eigen id, en vervolgens koppel je die id in een andere tabel aan de computer.
quote:Lijkt me beter om 1 tabel te hebben voor alle videokaarten. Hoeveel videokaarten zal je hebben? Hooguit enige 10tallen, desnoods 100 stuks. Daar ga je niet weer subtabellen voor maken.
Op donderdag 15 mei 2003 15:18 schreef domolanglekker het volgende:[..]
Dus voor iedere videokaart een aparte tabel
krijg je aardig wat tabellen? (of per gebruikt merk videokaart een tabel met alle videokaarten van dat merk?)
quote:Ja, maar die redundantie (dezelfde ID nummers in de hoofdtabel) blijf je houden, omdat de gegevens zelf redundant zijn (er zijn machines met dezelfde videokaart). Maar je kan beter redundant zijn in een integer, dan in een lange uitleg met characters. Een typefoutje is snel gemaakt, bovendien neemt het veel extra opslag in.
Op donderdag 15 mei 2003 15:24 schreef EggsTC het volgende:[..]
Dan krijg je in die andere tabel toch iedere keer het zelfde "ID-nummer" wat ook weer redundantie is........
(geen idee of het goed is, ga het nu ook lezen).
Overigens is het zelden wenselijk om verder dan de derde normaalvorm te normaliseren. Soms is het zelfs wenselijk om helemaal niet te normaliseren.
-edit- je kunt beter zeggen dat het soms wenselijk is om maar t/m de eerste normaalvorm te normaliseren.
[Dit bericht is gewijzigd door sop op 15-05-2003 15:39]
quote:Ja hoor.
Op donderdag 15 mei 2003 15:38 schreef EggsTC het volgende:
Kunnen er meerdere sleutels (die verwijzen naar vreemde sleutels) in een tabel?
quote:Met Primary Keys wel samengestelde keys (dus 1 Primary key die bestaat uit de combinatie van meerdere velden), met Foreign Keys (verwijzgingen naar andere tabellen) zoveel je maar wilt.
Op donderdag 15 mei 2003 15:38 schreef EggsTC het volgende:
Kunnen er meerdere sleutels (die verwijzen naar vreemde sleutels) in een tabel?
quote:Je bedoeld:
Op donderdag 15 mei 2003 15:38 schreef EggsTC het volgende:
Kunnen er meerdere sleutels (die verwijzen naar vreemde sleutels) in een tabel?
code:Waarbij de velden met een =>FK verwijzen naar een andere tabel.[table: Computer]
ID
MonitorID => FK
ToetsenbordID =>FK
MuisID => FK
PrinterID =>FK
Een primairy key definieer je in de structuur van de tabel. De foreign key wordt gedefinieerd in de relatie tussen de tabellen.
[Dit bericht is gewijzigd door sop op 15-05-2003 15:47]
quote:Alleen wil je dit eigelijk zoveel mogelijk vermijden...
Op donderdag 15 mei 2003 15:40 schreef Lucille het volgende:[..]
Met Primary Keys wel samengestelde keys (dus 1 Primary key die bestaat uit de combinatie van meerdere velden), met Foreign Keys (verwijzgingen naar andere tabellen) zoveel je maar wilt.
quote:Normaliseren is superhandig, het is en blijft redelijk overzichtelijk, je hebt weinig tot geen redundantie, maar je krijgt er verrekte rottige query's van
Op donderdag 15 mei 2003 14:50 schreef kareltje_de_grote het volgende:[..]
en welke normaalvorm heb je dan?
* ik vond normaliseren op school altijd best leuk
Maargoed, wij hebben dus ook de 1e t/m 4e normaalvorm behandeld, en dan ging op zich redelijk. Een makkelijk programma hierbij is SDW, die je redelijk helpt met het normaliseren, want goed normaliseren is nog helemaal geen eitje ben ik achter gekomen.
Ik denk dat in 80% van de gevallen ook geeneens genormaliseerd wordt. De meeste mensen denken van: wat heb ik nodig, wat wil ik opslaan, en hoppa, beng, knallen ze 1 a 2 tabellen eruit waar alles ingepropt is
Misschien dat je hier nog wat aan hebt!
Succes!
quote:Je wilt Foreign Keys vermijden?
Op donderdag 15 mei 2003 15:44 schreef markvleth het volgende:[..]
Alleen wil je dit eigelijk zoveel mogelijk vermijden...
quote:Samengestelde Primary Keys vermoedelijk.
Op donderdag 15 mei 2003 15:47 schreef Lucille het volgende:[..]
Je wilt Foreign Keys vermijden?
quote:Ik denk dat als je niet normaliseert het programmeren/onderhouden van de inhoud van je database nog veel rottiger wordt.
Op donderdag 15 mei 2003 15:46 schreef ReSiever het volgende:[..]
Normaliseren is superhandig, het is en blijft redelijk overzichtelijk, je hebt weinig tot geen redundantie, maar je krijgt er verrekte rottige query's van
quote:Ja, dat snap ik ook niet helemaal... dan is het principe van normaliseren dus al gevlogen....
Op donderdag 15 mei 2003 15:47 schreef Lucille het volgende:[..]
Je wilt Foreign Keys vermijden?
quote:Nee, joins zijn niet moeilijk, dat besef ik wel, maar je moet ermee gewerkt hebben. En mensen kiezen nou eenmaal voor de makkelijke manier.. Hup alles in 1 keer met een SELECT *, en daaruit lezen... maar daar is bij normaliseren geen sprake van
Op donderdag 15 mei 2003 15:50 schreef sop het volgende:[..]
Ik denk dat als je niet normaliseert het programmeren/onderhouden van de inhoud van je database nog veel rottiger wordt.
En zo moeilijk zijn joins nou ook weer niet.
quote:Ach, soms ontkom je er niet aan. Gewoonweg omdat er geen andere manier bestaat om op 1 veld een primary key te zetten.
Op donderdag 15 mei 2003 15:49 schreef Litpho het volgende:[..]
Samengestelde Primary Keys vermoedelijk.
quote:Als je zo graag een platte database wilt hebben, dan maak je toch gewoon een view aan. Kun je gewoon SELECT * doen.
Op donderdag 15 mei 2003 15:52 schreef ReSiever het volgende:[..]
Nee, joins zijn niet moeilijk, dat besef ik wel, maar je moet ermee gewerkt hebben. En mensen kiezen nou eenmaal voor de makkelijke manier.. Hup alles in 1 keer met een SELECT *, en daaruit lezen... maar daar is bij normaliseren geen sprake van
quote:ja sorry, ik doelde inderdaad op samengestelde sleutels. Ja de enige keer dat je er niet aan ontkomt is een veel op veel relatie en je dus gebruik maakt van een koppeltabel. Voor alle andere situaties gebruik je slechts een veld voor de pk...
Op donderdag 15 mei 2003 15:52 schreef Lucille het volgende:[..]
Ach, soms ontkom je er niet aan. Gewoonweg omdat er geen andere manier bestaat om op 1 veld een primary key te zetten.
quote:Ja, maar niet iedereen heeft daar zoveel verstand van he
Op donderdag 15 mei 2003 15:53 schreef sop het volgende:[..]
Als je zo graag een platte database wilt hebben, dan maak je toch gewoon een view aan. Kun je gewoon SELECT * doen.
quote:En hoe maak je zo'n view aan?
Op donderdag 15 mei 2003 15:53 schreef sop het volgende:[..]
Als je zo graag een platte database wilt hebben, dan maak je toch gewoon een view aan. Kun je gewoon SELECT * doen.
code:dus volgens mij schiet je daar nog niet veel mee op, ben je nog bezig met SQLlen.CREATE VIEW blah
SELECT hupeldepup, FROM huppeldepup WHERE blahblah = huppeldepup enz.
quote:Een database ontwerp maken zonder kennis van SQL lijkt me op zich al helemaal fout. Maar ja, zo heb ik genoeg foute database ontwerpen gezien in de afgelopen jaren.
Op donderdag 15 mei 2003 15:56 schreef ReSiever het volgende:[..]
Ja, maar niet iedereen heeft daar zoveel verstand van he
Ik vind normaliseren ok, maar je moet dan ook wat verstand van SQL hebben, dat bedoelde ik ermee te zeggen.
quote:Ja, maar die kennis van SQL komt meestal niet verder dan een SELECT * FROM tabel .. en dan zo af en toe nog een WHERE erbij
Op donderdag 15 mei 2003 15:58 schreef Lucille het volgende:[..]
Een database ontwerp maken zonder kennis van SQL lijkt me op zich al helemaal fout. Maar ja, zo heb ik genoeg foute database ontwerpen gezien in de afgelopen jaren.
|
Forum Opties | |
---|---|
Forumhop: | |
Hop naar: |