Designing tabeller i en relasjonsdatabase er uten tvil det vanskeligste , og viktigste , del av å bygge en database . Dårlig utformet tabeller føre til ikke å kunne finne data , å angi dupliserte data , og klosset dataregistrering . Tar tid å sørge for at bordene er riktig satt opp , og at forholdet er riktig opprettet bidrar til å sikre god database design. Designing tabeller
Før du begynner å tenke på tabeller , må du bestemme hvilken informasjon databasen kommer til å lagre . Den enkleste måten å finne ut av dette er svaret hvem, hva , hvor , når og hvordan. For eksempel , når du utformer en database som sporer studenter, hva klasser de tar, og som underviser i klassene , vil følgende være noe av svaret på spørsmålene : Hvem: studenter og instruktører ; Hva: klasse, klasse og antall studiepoeng; hvor: class steder, student adresse og instruktør adresse , Når: class dato og klokkeslett , hvordan : hvordan er klassen levert
p Det er viktig å ta tid og besvare disse spørsmålene så fullstendig som mulig. . Disse spørsmålene identifisere felt av tabellene . Når du vet hva alle feltene er, er du klar til å begynne å arrangere dem inn i tabeller . Å sørge for at feltet direkte er relatert til bordet navn, gruppe feltene ved felles tema og bryte feltene ned i de minste bitene mulig. For eksempel , i stedet for et felt som heter " InstructorName , " du bør bruke " IntructorFirstName 'og' InstructorLastName . ' Noen felt kan ikke klart tilhører ett bord . For eksempel , vedrører feltet ' Grad ' til studenten , men den angår også klassen. Når du støter på et felt som tilhører to forskjellige tabeller , betyr det at det må være i en join tabell , en tabell som binder to tabeller i en mange-til -mange-relasjon . På den måten kan en student få ulike karakterer for ulike klasser som er tatt .
Designing the Relasjoner
Når du har dine tabeller utformet, er neste steg å finne ut hvordan de forholder seg til hverandre . Det er tre typer relasjoner : en-til - en , en -til - mange, og mange-til -mange . En-til -en-relasjon er ikke ofte brukt . Det betyr at en post i en tabell direkte er relatert til en post i den andre tabell . Dette forholdet er brukt i Human Resources databaser , der en tabell inneholder usikre data som navn og adresse , og den andre tabellen inneholder de sikre data som for eksempel lønn .
Den andre typen forhold , og mest vanlige, er det en-til- mange-relasjon . Dette betyr at en post i en tabell direkte er relatert til mange registreringer av den andre tabellen. For eksempel kan en instruktør lære mange klasser . Dette er tilkjennegitt av den primære nøkkelen i instruktør tabellen , ' InstructorID , ' om en fremmednøkkel i klassene tabellen , ' ClassInstructor . '
Den tredje typen forhold er mange-til -mange . I dette forholdet , er mange poster i en tabell knyttet til mange poster i en annen tabell . For eksempel kan en student ta mange klasser , og en klasse kan ha mange studenter . For å lage denne sammenhengen , er en join tabellen nødvendig. Den join tabellen inneholder faktisk de utenlandske tastene. I dette forholdet , ville de utenlandske tastene være " StudentID 'og' ClassID " i join tabellen . Ved å opprette disse sammenhengene , er du tillater data å strømme fra bord til bord og være lett tilgjengelig .