როგორ შევინარჩუნოთ უნიკალური ინფორმაცია თითოეულ ელემენტზე რელაციურ ცხრილში?
sobes.tech AI
პასუხი AI-სგან
რელაციურ მონაცემთა ბაზაში ჩანაწერის უნიკალურობა განსაზღვრულია პირველადი გასაღვით. თითოეული სვეტი უნდა ჰქონდეს უნიკალური მნიშვნელობა სვეტში (ან სვეტების ნაკრებში), რომელიც განსაზღვრულია როგორც პირველი გასაღვი. ეს უზრუნველყოფს, რომ თითოეული ჩანაწერი შეიძლება იდენტიფიცირდეს ერთმნიშვნელოვნად.
აქ არის რამდენიმე მეთოდი უნიკალურობის უზრუნველსაყოფად:
-
ავტომატურად ზრდადი პირველი გასაღვი: ყველაზე გავრცელებული მიდგომა. ქმნიან მთელი რიცხვის ველს, რომელიც ავტომატურად იზრდება ყოველი ახალი ჩანაწერისთვის.
CREATE TABLE მომხმარებლები ( id INTEGER PRIMARY KEY AUTOINCREMENT, // უნიკალური ავტომატურად გენერირებული ID სახელი TEXT, ელფოსტა TEXT UNIQUE // დამატებითი უნიკალურობა ელფოსტისთვის ); -
UUID (საერთო უნიკალური იდენტიფიკატორი): თუ საჭიროა უნიკალური იდენტიფიკატორების გენერირება მომხმარებლის მხარიდან ან განაწილებულ სისტემაში, შეგიძლიათ გამოიყენოთ UUID.
CREATE TABLE პროდუქტები ( id TEXT PRIMARY KEY, // უნიკალური UUID ტექსტურ ფორმატში სახელი TEXT, ფასი REAL ); -
სიცოცხლის ბუნებრივი გასაღვი: თუ უნიკალურობა გარანტირებულია ერთ ან რამდენიმე არსებული მონაცემის ველით.
CREATE TABLE ქვეყნები ( iso_code TEXT PRIMARY KEY, // ქვეყნის კოდი უნიკალურია მსოფლიოში სახელი TEXT ); -
კომპოზიციური გასაღვი: რამდენიმე სვეტის კომბინაცია, რათა უზრუნველყოს ჩანაწერის უნიკალურობა.
CREATE TABLE შეკვეთები_პროდუქტები ( შეკვეთა_id INTEGER, პროდუქტი_id INTEGER, რაოდენობა INTEGER, PRIMARY KEY (შეკვეთა_id, პროდუქტი_id) // შეკვეთა_id + პროდუქტი_id წყვილი უნიკალურია );
მეთოდის არჩევა დამოკიდებულია მონაცემების იდენტიფიცირების მოთხოვნებზე. მთავარი — უნდა იყოს პირველი გასაღვი.