Bi o ṣe le Ṣẹda Awọn bọtini Ijeji ni Microsoft SQL Server

Ọkan ninu awọn eroja ti o ṣe pataki julọ ni awọn apoti isura data n ṣiṣẹda awọn ibasepọ laarin awọn tabili ipamọ. Awọn ibaraẹnisọrọ wọnyi n pese siseto kan fun sisopo awọn data ti o fipamọ ni awọn tabili pupọ ati gbigba pada ni ilọsiwaju daradara. Lati le ṣẹda ọna asopọ laarin awọn tabili meji, o gbọdọ pato bọtini ajeji ni tabili kan ti o ṣe apejuwe iwe kan ni tabili miiran.

Awọn tabili tabili ati awọn ajọṣepọ

O le ti mọ tẹlẹ pe awọn apoti isura infomesonu jẹ orisirisi awọn tabili , iru si ohun ti o le tẹlẹ lo ninu eto iwe kaunti , bi Microsoft Excel. Ni otitọ, o le ṣe iyipada iwe pelebe Excel kan si ipamọ data kan. Nibo awọn apoti isura data wa lati awọn iwe-ẹri, sibẹsibẹ, jẹ nigbati o ba wa ni sisẹ awọn ibasepọ lagbara laarin awọn tabili.

Wo, fun apẹẹrẹ, ibi-ipamọ data ti ile-iṣẹ kan nlo lati ṣe alaye alaye alaye eniyan. Ilẹ-ipamọ yii le ni tabili kan ti a npe ni Awọn Abáni ti o ni awọn alaye wọnyi fun ẹgbẹ kọọkan ti awọn ile-iṣẹ ile-iṣẹ naa:

Ni apẹẹrẹ yii, ID nọmba-iṣẹ jẹ nọmba alaidi ti o ṣẹda ti a yàn si ọdọ-iṣẹ kọọkan nigbati a ba fi kun wọn sinu ipamọ data. ID ipo ni koodu ti a lo lati ṣe apejuwe ipo ti oṣiṣẹ ni ile. Ni ọna yii, oṣiṣẹ le nikan ni ipo kan, ṣugbọn ọpọ (tabi rara) awọn oṣiṣẹ le fọwọsi ipo kọọkan. Fun apere, o le ni ogogorun awọn abáni pẹlu ipo "Cashier".

Ibi ipamọ naa le tun ni tabili ti a npe ni Awọn ipo pẹlu alaye afikun ti o wa fun ipo kọọkan:

Ibi ID ipo ni tabili yi jẹ iru si aaye ID iṣẹ ni Table ti Awọn Abáni - o jẹ nọmba ti o ni ipilẹṣẹ ti o ṣẹda ti o ṣẹda nigbati a ba fi ipo kun si database.

Nigba ti a ba lọ lati fa akojọpọ awọn abáni lati ibi-ipamọ, o jẹ adayeba lati beere orukọ ẹni kọọkan ati akọle wọn. Sibẹsibẹ, alaye yii ni a fipamọ sinu awọn tabili ipilẹ database, nitorina a le gbajade nikan pẹlu lilo ibeere JOIN ti o nilo ibasepo to wa tẹlẹ laarin awọn tabili.

Nigbati o ba wo iru awọn tabili naa, aaye ti o ṣalaye ibasepọ naa jẹ eyiti o han - aaye ipo ID ipo. Olukuluku ọṣẹ le ni ipo kan nikan ati pe ipo naa ni a mọ nipa pẹlu ID ID ipo lati titẹ sii ti o pọju. Ni afikun si jije akọkọ bọtini fun tabili Awọn ipo, ni apẹẹrẹ yii, aaye ID ipo Pii jẹ bọtini bọtini ajeji lati ọdọ Awọn oluṣe iṣẹ si tabili Awọn ipo. O le lo aaye yii lati ṣafihan alaye lati awọn tabili pupọ ati rii daju pe eyikeyi ayipada tabi afikun si database n tẹsiwaju lati ṣe atunṣe imudaniloju atunṣe .

Lọgan ti o ba ti mọ bọtini bọtini ajeji, o le lọ siwaju ati fa alaye ti o fẹ lati inu data nipa lilo ibeere wọnyi:

ṢẸRẸ FirstName, LastName, Akọle LATI Awọn ỌJỌ TI NI Awọn ipo Lori Awọn Abáni.PositionID = Positions.PositionID

Ṣiṣẹda Awọn bọtini ajeji ni SQL Server

Ni imọiran, o ko nilo lati ṣalaye ibasepo naa ni gbangba lati ni anfani lati ṣe awọn ibeere bi eleyi loke. Sibẹsibẹ, ti o ba ṣe kedere ṣalaye ibasepọ nipa lilo iyasọtọ bọtini bọtini ajeji, database yoo ni agbara lati ṣe iṣẹ ṣiṣe ile fun ọ:

Eyi ni bi o ṣe le ṣẹda bọtini ajeji ni SQL Server:

TABI TI Awọn agbanisiṣẹ ADD FOREIGN KEY (PositionID) Awọn atunṣe Awọn ipo (PositionID)

O tun le ṣẹda bọtini ajeji nigbati o ba ṣẹda tabili nipa fifi aaye kun:

AWỌN AWỌN AWỌN AWỌN AWỌN AWỌN ỌJỌ AWỌN ỌJỌ Awọn ipo (PositionID)

titi de opin opin itọnisọna iwe fun kọkọrọ bọtini bọtini ajeji.