Უცხოური გასაღების ძალა დამოკიდებულებათა მონაცემთა ბაზებში

უცხოური გასაღები ხსნის მთელი მსოფლიოს მონაცემებს

მონაცემთა ბაზის დიზაინერები ქმნიან გასაღების ფართო გამოყენებას, როდესაც განვითარებადი მონაცემთა ბაზების განვითარება. ამ გასაღების ყველაზე გავრცელებულნი არიან პირველადი გასაღებები და უცხოური გასაღებები. მონაცემთა ბაზის უცხოური გასაღები არის საველე რიტუალი მაგიდა, რომელიც შეესაბამება სხვა ცხრილის ძირითად საკვანძო სვეტს. იმის გასაგებად, თუ როგორ მუშაობს უცხოური საკვანძო სიტყვები, მოდით უფრო ახლოს დავაფიქსიროთ რელატიური მონაცემთა ბაზის იდეა.

ურთიერთდაკავშირების ზოგიერთი საფუძვლები

რიტუალურ მონაცემთა ბაზაში მონაცემები ინახება რიგებითა და სვეტებისგან, რომლებიც ადვილად მოძებნიან და მანიპულირებას ახდენენ. არსებობს სერიოზული მათემატიკა, რომელიც დაკავშირებულია რელატიური მონაცემთა ბაზის (რელაციური ალგებრის კონცეფცია,

Codd at IBM 1970 წელს), მაგრამ ეს არ არის თემა ამ მუხლის.

პრაქტიკული მიზნებისათვის (და არა მათემატიკოსები), relational database ინახავს "დაკავშირებული" მონაცემებს რიგები და სვეტებში. შემდგომი და აქ არის ის, სადაც იგი იღებს საინტერესო ყველაზე მონაცემთა ბაზების შექმნილია ისე, რომ მონაცემები ერთ მაგიდასთან შეუძლია მონაცემების სხვა მაგიდაზე. ამ შესაძლებლობას ქმნის ურთიერთობებს მაგიდები შორის არის რეალურ მონაცემთა ბაზა.

უცხოური გასაღების გამოყენება

უმრავლეს მაგიდები, განსაკუთრებით დიდი, რთული მონაცემთა ბაზები, ძირითადი გასაღები. მაგიდები, რომლებიც განკუთვნილია სხვა ცხრილებისთვის, უნდა ჰქონდეს უცხოური გასაღები.

საყოველთაოდ დასახელებული ჩრდილო-ატმოსფერო მონაცემთა ბაზის გამოყენება, აქ არის პროდუქტის ცხრილიდან ამონაწერი:

Northwind მონაცემთა ბაზის პროდუქტის მაგიდა ამონაწერი
ProductID პროდუქტის სახელი კატეგორიაID QuantityPerU ერთეულის ფასი
1 ჩაი 1 10 ყუთი x 20 ჩანთები 18.00
2 Chang 1 24 - 12 oz ბოთლი 19.00
3 Aniseed სიროფი 2 12 - 550 მლ ბოთლი 10.00
4 Chef Anton- ს Cajun სუნელი 2 48 - 6 oz ქილებში 22.00
5 შეფ ანტონის გუმბოს მიქსი 2 36 ყუთი 21.35
6 ბებიას ბიჭები 2 12 - 8 oz ქილებში 25.00
7 ბიძა ბობ ორგანული ხმელი მსხალი 7 12 - 1 lb pkgs. 30.00

ProductID სვეტი არის ამ ცხრილის ძირითადი გასაღები. იგი თითოეულ პროდუქტს უნიკალური ID ანიჭებს.

ეს ცხრილი ასევე შეიცავს უცხოური საკვანძო სვეტის კატეგორიას . ყველა პროდუქტი პროდუქტის ცხრილის ბმულებს შესვლის კატეგორიაში მაგიდაზე, რომელიც განსაზღვრავს პროდუქტის კატეგორიას.

გაითვალისწინეთ ეს ამონაწერი მონაცემთა ბაზის კატეგორიის მაგიდადან:

Northwind მონაცემთა ბაზის კატეგორიები მაგიდის ამონაწერი
კატეგორიაID კატეგორია აღწერა
1 სასმელი რბილი სასმელები, კოფეხები, ჩაი, ლუდი და ალები
2 კონდიციონერები ტკბილი და გემრიელი საწებელი, წაიკითხავს, ​​ვრცელდება და სეზონებს
3 Confections დესერტი, ტკბილეული და ტკბილი
5 რძის პროდუქტები ყველი

სვეტი CategoryID არის ამ სვეტის პირველადი გასაღები. (მას არ აქვს უცხოური გასაღები, რადგან მას არ აქვს სხვა მაგიდის წვდომა). პროდუქტის ცხრილის ყოველი უცხოური გასაღები დაკავშირებულია ძირითად ძირითად ძირითად კატეგორიაში. მაგალითად, პროდუქტის Chai ენიჭება კატეგორიის "სასმელები", ხოლო Aniseed სიროფი არის კატეგორიაში კონდიციონერები.

ამგვარი კავშირი ქმნის მრავალფეროვან გზებს მონაცემთა ბაზის გამოყენებისა და ხელახალი გამოყენებისათვის.