څنګه د مائیکروسافټ SQL Server کې بهرني کلیدي جوړ کړئ

د ډیټابیسزونو څخه یو له مهمو مفکورو څخه د ډیټابیس میزونو ترمنځ اړیکو رامنځته کول دي. دا اړیکې په ډیرو میزونو کې ساتل شوي ډاټا سره اړیکه ونیسي او په موثره توګه یې بیا ترلاسه کولو میکانیزم وړاندې کوي. د دې لپاره چې د دوو میزونو ترمنځ یو لینک رامنځته شي، تاسو باید په یوه میز کې یو بهرني کیلي وټاکئ چې په بل میز کې یوه کالم حواله کوي.

د ډیټابیس میزونه او اړیکې

تاسو شاید لا دمخه په دې پوه شئ چې ډاټا بیسونه په اسانۍ سره د میزونو لړۍ ده ، هغه څه چې تاسو یې د سپریڈ شیٹ پروګرام کې کارولی شئ، لکه مائیکروسافټ اکسل. په حقیقت کې، تاسو کولی شئ چې د Excel سپیټ پاڼه یو ډیټابیس ته بدل کړئ. په کوم ځای کې ډاټابیسیزونه د سپریڈشټونو څخه توپیر لري، مګر، کله چې دا د میزونو ترمنځ د قوي اړیکو جوړولو لپاره راځي.

د بیلګې په توګه، د بشري سرچینو د معلوماتو د تعقیب لپاره د یوې شرکت لخوا کارول شوې ډیټابیس وګورئ، وګورئ. دا ډاټابیس کیدای شي د کارمندانو په نوم یو میز ولري چې د شرکت د کارکوونکو د هر غړي لپاره الندې معلومات لري:

په دې مثال کې، د کارموندنې یو غیر رسمي تولید شوی انټرنټ دی چې هر کارمند ته سپارل کیږي کله چې دوی ډیټابیس کې اضافه شوي. د پوسټ ID د کارموند کوډ دی چې د شرکت کارکوونکي د شرکت مقام ته حواله کوي. په دې سیسټم کې، یو مامور ممکن یوازې یو موقف ولري، مګر ډیری (یا نه) کارمندان کولی شي هر ځای ډک کړي. د مثال په توګه، تاسو ممکن د "کیشیر" پوست سره په سلګونو کارکونکي ولري.

ډیټابیس کېدی شي د هر پوست په اړه لاندې اضافي معلوماتو سره د پوسټونو په نوم یو میز ولري:

په دې جدول کې د مقام ID ساحه د کارمندانو میز کې د کارمندانو ID ID سره ورته ده - دا یو غیر مشخص شوي تولید کونکی دی چې جوړیږي کله چې ډیټا ډیټابیس ته اضافه کیږي.

کله چې موږ د ډیټابیس څخه د کارمندانو لست لیږو نو دا به طبیعي وي چې د هر کس نوم او د دوی سرلیک غوښتنه وکړئ. په هرصورت، دا معلومات په ډیری ډاټابیس میزونو کې زیرمه شوي، نو دا یوازې د JOIN پوښتنی په کارولو سره کیدی شي چې د میزونو ترمنځ موجوده اړیکه ته اړتیا لري.

کله چې تاسو د میزونو جوړښت ته ګورئ، د اړیکو تعریف په ساحه کې ښایي واضح وي - د مقام ID ساحه. هر کارمندان یوازې یو پوزیشن لري او دا موقف د پوستې د میز سره ورته ځای کې د پوستې ID په شمول پیژندل کیږي. د پوسټ میز لپاره د لومړني کلیدي کیدو سربیره، په دې مثال کې، د پوستی ID ساحه د کارمندانو میز څخه د پوسټ جدول ته هم بهرني کلیدی دی. بیا ډاټابیس کولی شي پدې ساحه کې معلومات د څو میزونو څخه باوري کړي او ډاډه کړي چې کوم بدلون یا ډیټابیس ډیټابیس ادامه لري د قواعدو بشپړتیا پلي کول.

یو ځل چې تاسو بهرني کلیدي پیژانده، نو تاسو پرمخ ځئ او غوښتل شوي معلومات د ډیټابیس څخه لاندی پوښتنی په کار واچوئ:

SELECT FirstName، LastName، د کارمندانو د ننوتلو شمیره د کارمندانو په اړه پوسټونه.PositionID = Positions.PositionID

په ایس ایس ایل سرور کې د بهرنیو کلیدونو رامینځته کول

په تخنیکي توګه، تاسو اړتیا نلرئ چې اړیکې په ښکاره توګه تعريف کړئ ترڅو د پوښتنو لکه څنګه چې پورته پورته پورته کولو توان ولري. که څه هم، که تاسو په ښکاره توګه د بهرنیو کلیدي خنډونو په کارولو سره اړیکه تعریف کړئ، ډاټابیس به وکوالی شي ستاسو لپاره د کور جوړولو کار ترسره کړي:

دلته دلته په SQL سرور کې بهرني کلیدي څنګه جوړوي:

د جدول جدول د کارکونکي کار د بهرني کلیدي ځواک) PositionID (راپورونه وضعیتونه (PositionID)

تاسو کولی شئ د بهرنیو چارو کلیدي هم جوړ کړئ کله چې تاسو د جدول اضافه کولو سره میز ته تیار کړئ:

د بهرنیو کلیدي اصالحاتو وضعیت) PositionID (

د بهرنیو کلیدي کالم لپاره د کالم تعریف تعریف.