Basis-kaaien dy't databases management maklik meitsje

Databesksels binne de maklikste manier om in effisjinte relaasje-database te meitsjen

As jo ​​al witte kinne, databases brûke tabellen om ynformaasje te organisearjen. (As jo ​​gjin basis bekwamens binne mei databankkonceptjes, lêze wat is in databank? ) Elke tabel bestiet út in oantal reihen, elk dêrby is ien inkelde database-record. Dus, hoe bliuwe de databases allinich dizze boeken rjochtstreeks? It is troch it brûken fan toetsen.

Primêre kaaien

It earste soarte kaai dat wy besykje, is de primêre kaai . Alle databank tabel moat ien of mear kolommen hawwe as de primêre kaai . De wearde dy't dizze kaai hâldt, moat unyk wêze foar elke record yn 'e database.

Sa asjebleaft, hawwe wy in tabel neamd meiwurkers dy't persoanlike ynformaasje befetsje foar elke wurknimmer yn ús bedriuw. Wy moatte in passende primêre kaai selektearje dy't elke meiwurker unike identifisearje soe. Jo earste gedachte kin wêze om de namme fan 'e meiwurker te brûken. Dit soe net goed útfiere, om't it is fan betinken dat jo twa meiwurker mei deselde namme ha wolle. In bettere kar meitsje kin wêze om in unike arbeide ID-nûmer te brûken dy't jo oan elke meiwurker oanbelangje as se ynhierd wurde. Guon organisaasjes kieze foar Sosjaal Feiligensnûmers (of similar similar government identifiers) foar dizze taak om't elke meiwurker al ien hat en se binne garandearre om unyk te wêzen. It brûken fan sosjale feiligensnûmers foar dit doel is lykwols tige kontroversje troch privacy. (As jo ​​wurkje foar in regear-organisaasje, kin it gebrûk fan in Sosjaal Feiligensnûmer sels ferkeard wurde ûnder de privacy Act fan 1974.) Dêrom hawwe de measte organisaasjes ferpleatst nei it gebrûk fan unike identifisers (meiwurker ID, studinte-ID, ensfh. .) dy't dizze privacy net diele.

As jo ​​beslute oer in primêre kaai en opset de databank, sil it databankbehearsysteem de ienichheid fan 'e kaai brûke.

As jo ​​besykje in rekord yn in tab te pleatsen mei in primêre kaai dat in besteande skript duplikearet, sil it ynfoeg falle.

De measte databases binne ek yn steat om har eigen primêre kaaien te generearjen. Microsoft Access kin bygelyks ynsteld wurde om de databestype AutoNumber te brûken om in unike identiteit te jaan oan elke record yn 'e tabel. Hoewol effektyf is dit in minne ûntjouwingpraktyk, om't it jo in betsjuttelwearde yn elke record yn 'e tafel leit. Wêrom net dat romte brûke om wat nuttich te bewarjen?

Foreign Keys

It oare type is de frjemde kaai , dy't brûkt wurdt om relaasjes te meitsjen tusken tabellen. Natuerlike relaasjes besteane tusken tabellen yn 'e measte databasestrukturen. Gean werom nei ús meiwurkers databank, foarkom dat wy in tabel tafoegje wolle dy't de ôfdielende ynformaasje nei de database stelt. Dizze nije tabel kin wurde ôfdielingen neamd wurde en in grut tal ynformaasje oer de ôfdieling as gehiel befetsje. Wy wolle ek ynformaasje opnimme oer de meiwurkers yn 'e ôfdieling, mar it soe redundant wêze om deselde ynformaasje yn twa tabellen (meiwurkers en ôfdielingen) te hawwen. Yn stee dêrfan kinne wy ​​in relaasje meitsje tusken de twa tabellen.

Litte wy der fan útstelle dat de tabellen fan 'e ôfdielingen de kolom fan de ôfdieling brûke as de primêre kaai. Om in relaasje te meitsjen tusken de twa tabellen, sette wy in nije kolom oan by de Tafel Employees called Department. Wy folje dan de namme fan 'e ôfdieling dêr't elke meiwurker thús is. Wy stelle ek it systeembeheiningsysteem te ynformearjen dat de depottskolom yn 'e Tabelts Employees in frjemde kaai is dat de tabellen departments ferwiziget.

De databank sil de referinsjele yntegriteit trochsette troch te soargjen dat alle wearden yn 'e depaltskolom fan' e Tabel Employees oerienkommende yngongen hawwe yn 'e ôfdielingstafel.

Taljochting: der is gjin ienheid foar beheining foar in frjemde kaai. Wy meie (en it wierskynlik dwaan) hawwe mear as ien meiwurker dy't heart ta ien ôfdieling. Lykas der is gjin ferplichting dat in yngong yn 'e ôfdieling tafel ienige oerienkommende yngong yn' e tabel Employees hat. It is mooglik dat wy in ôfdieling hawwe mei gjin meiwurkers.

Foar mear oer dit ûnderwerp lêze Ljeppers fan bûtenlânske talen .