Conas Eochracha Eachtracha a Chruthaigh i Microsoft SQL Server

Is é ceann de na coincheapa is tábhachtaí i mbunachair sonraí ná caidrimh a chruthú idir táblaí bunachar sonraí. Soláthraíonn na caidrimh seo meicníocht chun sonraí a stóráil i ilbhoird a nascadh agus é a aisghabháil ar bhealach éifeachtach. D'fhonn nasc a chruthú idir dhá tábla, ní mór duit eochair iasachta a shonrú i dtábla amháin a thagaíonn colún i dtábla eile.

Táblaí agus Caidrimh Bunachar Sonraí

B'fhéidir go mbeadh a fhios agat cheana féin go bhfuil sraitheanna simplí sna bunachair sonraí, cosúil leis an méid a d'fhéadfá a úsáid cheana féin i gclár scarbhileog , mar shampla Microsoft Excel. Go deimhin, is féidir leat scarbhileog Excel a thiontú go bunachar sonraí. Nuair a bhíonn bunachair shonraí difriúla ó scarbhileoga, áfach, nuair a thagann sé chun caidrimh chumhachtacha a thógáil idir táblaí.

Smaoinigh ar, mar shampla, bunachar sonraí a úsáideann cuideachta chun faisnéis acmhainní daonna a rianú. D'fhéadfadh go mbeadh tábla ag an mbunachar sonraí sin ar a dtugtar Fostaithe a bhfuil an fhaisnéis seo a leanas i ngach ball de fhoireann na cuideachta:

Sa sampla seo, is ionann an ID fostaí agus slánuimhir uathúil a thugtar do gach fostaí nuair a chuirtear leis an mbunachar sonraí iad. Cód poist í an ID a úsáidtear chun tagairt a dhéanamh do phost an fhostaí sa chuideachta. Sa scéim seo, d'fhéadfadh fostaí amháin a bheith ag fostaí, ach is féidir le fostaithe iomadúla (nó gan aon) gach post a líonadh. Mar shampla, d'fhéadfadh go mbeadh na céadta fostaithe agat le seasamh "Airgeadóra".

D'fhéadfadh go mbeadh tábla sa phost ar an mbunachar sonraí ar a dtugtar Poist leis an bhfaisnéis bhreise seo a leanas maidir le gach seasamh:

Tá an réimse Aitheantais Seasamh sa tábla seo cosúil le réimse Aitheantais an Fhostaithe sa tábla Fostaithe - is slánuimhir uathúil é a cruthaíodh nuair a chuirtear post leis an mbunachar sonraí.

Nuair a théann muid le liosta fostaithe a tharraingt ón mbunachar sonraí, bheadh ​​sé nádúrtha ainm gach duine agus a dteideal a iarraidh. Stóráiltear an fhaisnéis seo i dtáblaí ilbhunachar sonraí, áfach, mar sin ní féidir é a aisghabháil ach trí cheist IARRÁIN a éilíonn caidreamh atá ann cheana féin idir na táblaí.

Nuair a fhéachann tú ar struchtúr na dtáblaí, is dócha go bhfuil an réimse a shainíonn an gaol soiléir - réimse an Aitheantais Poist. Ní féidir ach aon phost amháin a bheith ag gach fostaí agus aithnítear an seasamh sin trí ID a bheith san áireamh ó iontráil chomhfhreagrach an tábla Poist. Chomh maith le bheith mar phríomh-eochair do thábla Poist, sa sampla seo, is eochair eachtrach freisin ón réimse Fostaithe ar an mbord Poist. Is féidir leis an mbunachar sonraí an réimse seo a úsáid ansin chun faisnéis a chomhcheangal ó ilálacha táblaí agus a chinntiú go leanann aon athruithe nó breisithe ar an mbunachar sonraí le hionracas fabhraíochta a fhorfheidhmiú.

Nuair a bheidh tú ag eochair eachtrach a aithint, is féidir leat dul ar aghaidh agus an fhaisnéis atá ag teastáil ón mbunachar sonraí a bhaint as an cheist seo a leanas:

SELECT FirstName, LastName, Title FROM Fostaithe FÁILÍOCHTAÍ Poist LE ON Employees.PositionID = Positions.PositionID

Cruthú Eochracha Eachtracha i Freastalaí SQL

Go teicniúil, ní gá duit an gaol a shainiú go sainráite le bheith in ann ceisteanna a dhéanamh cosúil leis an gceann thuas. Mar sin féin, má dhéanann tú sainmhíniú sainráite ar an gcaidreamh a úsáideann srian eochair eachtrach, beidh an bunachar sonraí in ann obair áirithe a dhéanamh ar do shon:

Seo mar a chruthafá an eochair eachtrach i SQL Server:

ALTER TABLE Fostaithe ADDÁIN EACHTRACH EACHTRACH (PositionID) TAGAIRTÍOCHTAÍ Poist (PositionID)

Féadfaidh tú eochair iasachta a chruthú freisin nuair a chruthaíonn tú tábla tríd an gclásal a chur leis:

PRÍOMHÁLACHA EAGRAÍOCHTA Poist (PositionID)

go dtí deireadh an mhínithe colún don eochair eachtrach colún.