შესავალი მონაცემთა ბაზებთან ურთიერთობაში

Სარჩევი:

შესავალი მონაცემთა ბაზებთან ურთიერთობაში
შესავალი მონაცემთა ბაზებთან ურთიერთობაში
Anonim

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

Image
Image

მონაცემთა ბაზის ურთიერთობის ტიპები

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

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

  • ერთ-ერთზე ურთიერთობა ხდება მაშინ, როდესაც პირველ ცხრილში თითოეულ ჩანაწერს აქვს მხოლოდ ერთი ანალოგი მეორე ცხრილში. ერთი-ერთზე ურთიერთობა იშვიათად გამოიყენება, რადგან ხშირად უფრო ეფექტურია ყველა ინფორმაციის ერთ ცხრილში მოთავსება. მონაცემთა ბაზის ზოგიერთი დიზაინერი სარგებლობს ამ ურთიერთობით ცხრილების შექმნით, რომლებიც შეიცავს სხვა ცხრილის მონაცემების ქვეჯგუფს.
  • ერთი-მრავალზე ურთიერთობა არის მონაცემთა ბაზის ურთიერთობის ყველაზე გავრცელებული ტიპი. ისინი წარმოიქმნება მაშინ, როდესაც A ცხრილის თითოეული ჩანაწერი შეესაბამება B ცხრილში ერთ ან მეტ ჩანაწერს, მაგრამ B ცხრილის თითოეული ჩანაწერი შეესაბამება მხოლოდ ერთ ჩანაწერს A ცხრილში. მაგალითად, ურთიერთობა მასწავლებელთა ცხრილსა და სტუდენტთა ცხრილს შორის დაწყებით სკოლაში. მონაცემთა ბაზა სავარაუდოდ იქნება ერთი-მრავალზე ურთიერთობა, რადგან თითოეულ მოსწავლეს ჰყავს მხოლოდ ერთი მასწავლებელი, მაგრამ თითოეულ მასწავლებელს ჰყავს რამდენიმე სტუდენტი.ეს დიზაინი ერთიდან ბევრამდე ეხმარება დუბლირებული მონაცემების აღმოფხვრას.
  • ბევრიდან ბევრამდე ურთიერთობა ხდება მაშინ, როდესაც A ცხრილის თითოეული ჩანაწერი შეესაბამება B ცხრილის ერთ ან მეტ ჩანაწერს, ხოლო B ცხრილის თითოეული ჩანაწერი შეესაბამება ერთ ან მეტ ჩანაწერს. ცხრილში A. მაგალითად, ურთიერთობა მასწავლებელთა ცხრილსა და კურსების ცხრილს შორის, სავარაუდოდ, იქნება ბევრი-მრავალზე, რადგან თითოეულ მასწავლებელს შეუძლია ასწავლოს ერთზე მეტი კურსი და თითოეულ კურსს შეიძლება ჰყავდეს ერთზე მეტი ინსტრუქტორი.

ბოლო ხაზი

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

ურთიერთობების შექმნა უცხოური გასაღებებით

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

განვიხილოთ მასწავლებლებისა და სტუდენტების ცხრილების მაგალითი. მასწავლებლების ცხრილი შეიცავს ID-ს, სახელს და კურსის სვეტს:

ინსტრუქტორი მასწავლებლის_სახელი კურსი
001 ჯონ დოი ინგლისური
002 ჯეინ შმო მათემატიკა

სტუდენტების ცხრილი შეიცავს ID-ს, სახელს და უცხო გასაღების სვეტს:

სტუდენტის ID სტუდენტის_სახელი Teacher_FK
0200 ლოუელ სმიტი 001
0201 ბრაიან შორტი 001
0202 კორკი მენდესი 002
0203 მონიკა ჯონსი 001

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

ეს ორი ცხრილი ასახავს მასწავლებელსა და მოსწავლეებს შორის ერთიდან ბევრ ურთიერთობას.

ურთიერთობები და რეფერენციალური მთლიანობა

მაგიდაზე უცხო გასაღების დამატების შემდეგ შექმენით მონაცემთა ბაზის შეზღუდვა, რომელიც ახორციელებს რეფერენციალურ მთლიანობას ორ ცხრილს შორის. ეს ნაბიჯი უზრუნველყოფს ცხრილებს შორის ურთიერთობების შენარჩუნებას. როდესაც ერთ ცხრილს აქვს უცხო გასაღები მეორე ცხრილისთვის, რეფერენციული მთლიანობა მოითხოვს, რომ ნებისმიერი უცხო გასაღების მნიშვნელობა B ცხრილში უნდა ეხებოდეს A ცხრილში არსებულ ჩანაწერს.

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

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

თუ პირდაპირ წერთ SQL-ს, ჯერ შექმენით ცხრილი Teachers, გამოაცხადეთ ID სვეტი, როგორც ძირითადი გასაღები:

CREATE TABLE Teachers (InstructorID INT AUTO_INCREMENT PRIMARY KEY, Teacher_Name VARCHAR(100), კურსი VARCHAR(100));

როდესაც შექმნით Students ცხრილს, თქვენ აცხადებთ, რომ Teacher_FK სვეტი არის უცხო გასაღები, რომელიც მიუთითებს InstructorID სვეტზე მასწავლებლების ცხრილში:

CREATE TABLE Students (StudentID INT AUTO_INCREMENT PRIMARY KEY, Student_Name VARCHAR(100), Teacher_FK INT, FOREIGN RE_KEYT)მასწავლებლები (FOREIGN RE_KEYT));

ურთიერთობების გამოყენება ცხრილებთან შესაერთებლად

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

მაგალითად, ეს JOIN პირობა აბრუნებს სტუდენტის_სახელს, მასწავლებლის_სახელს და კურსს, სადაც უცხოური გასაღები სტუდენტთა ცხრილში ემთხვევა მასწავლებლების ცხრილის ძირითად კლავიშს:

SELECT Students. Student_Name, Teachers. Teacher_Name, Teachers. Course

FROM Students

INNER JOIN TeachersON Students. Teacher_FK=მასწავლებლები.

ეს განცხადება წარმოქმნის ცხრილს დაახლოებით ამგვარად:

სტუდენტის_სახელი მასწავლებლის_სახელი კურსი
ლოუელ სმიტი ჯონ დოი ინგლისური
ბრაიან შორტი ჯონ დოი ინგლისური
კორკი მენდესი ჯეინ შმო მათემატიკა
მონიკა ჯონსი ჯონ დოი ინგლისური

გირჩევთ: