Სარჩევი:
ვიდეო: როგორ ვიპოვო უცხო გასაღების შეზღუდვები SQL Server-ში?
2024 ავტორი: Lynn Donovan | [email protected]. ბოლოს შეცვლილი: 2023-12-15 23:49
აქ არის საუკეთესო გზა გასარკვევად Უცხოური გასაღები ურთიერთობა ყველა მონაცემთა ბაზაში. In SQL სერვერი მართვის სტუდია შეგიძლიათ უბრალოდ დააწკაპუნოთ ცხრილზე მაუსის მარჯვენა ღილაკით ობიექტის მკვლევარში და აირჩიეთ "View Dependencies". ეს მოგცემთ კარგ საწყის წერტილს. ის აჩვენებს ცხრილებს, ხედებს და პროცედურებს, რომლებიც მიუთითებენ ცხრილზე.
ანალოგიურად, ისმის კითხვა, რა არის SQL-ში უცხო გასაღების შეზღუდვა?
საგარეო გასაღების შეზღუდვები . ა უცხოური გასაღები (FK) არის სვეტი ან სვეტების კომბინაცია, რომელიც გამოიყენება დადგენისთვის და აღასრულოს ბმული მონაცემებს შორის ორ ცხრილში, რათა აკონტროლოს მონაცემები, რომლებიც შეიძლება შეინახოს მასში უცხოური გასაღები მაგიდა.
გარდა ამისა, რა პრობლემებს აჩენს უცხოური გასაღებები? აქ არის რამდენიმე საერთო საგარეო გასაღების პრობლემა.
- ჩამოკიდებული უცხო გასაღებები. უცხო გასაღები მიუთითებს ძირითად გასაღებზე, რომელიც იქ არ არის.
- მიმართეთ უნიკალურ გასაღებს, გარდა ძირითადი გასაღებისა. ამას არანაირი სარგებელი არ აქვს.
- არაფორმალური კავშირი ცხრილებს შორის.
- მონაცემთა ტიპების შეუსაბამობა.
- გადატვირთული უცხოური გასაღებები.
ამის გათვალისწინებით, როგორ ვიპოვო უცხო გასაღები მაგიდაზე?
Ნახვა უცხოური გასაღები ურთიერთობები ა მაგიდა : აირჩიეთ TABLE_NAME, COLUMN_NAME, CONSTRAINT_NAME, REFERENCED_TABLE_NAME, REFERENCED_COLUMN_NAME INFORMATION_SCHEMA-დან. KEY_COLUMN_USAGE WHERE REFERENCED_TABLE_SCHEMA = 'db_name' და REFERENCED_TABLE_NAME = 'table_name';
როგორ დავამატო უცხო გასაღების შეზღუდვა SQL Server Management Studio-ში?
SQL Server Management Studio-ს გამოყენებით
- Object Explorer-ში დააწკაპუნეთ მარჯვენა ღილაკით ცხრილზე, რომელიც იქნება ურთიერთობის უცხო გასაღების მხარეს და დააწკაპუნეთ დიზაინი.
- ცხრილის დიზაინერის მენიუდან დააწკაპუნეთ ურთიერთობებზე.
- საგარეო გასაღების ურთიერთობების დიალოგურ ფანჯარაში დააწკაპუნეთ დამატება.
- დააწკაპუნეთ ურთიერთობაზე არჩეული ურთიერთობის სიაში.
გირჩევთ:
როგორ შევქმნათ პირველადი გასაღების უცხო გასაღების კავშირი SQL Server-ში?
SQL Server Management Studio-ის გამოყენებით Object Explorer-ში, დააწკაპუნეთ მარჯვენა ღილაკით მაგიდაზე, რომელიც იქნება ურთიერთობის უცხო კლავიშის მხარეს და დააწკაპუნეთ დიზაინი. ცხრილის დიზაინერის მენიუდან დააწკაპუნეთ ურთიერთობებზე. საგარეო გასაღების ურთიერთობების დიალოგურ ფანჯარაში დააწკაპუნეთ დამატება. დააწკაპუნეთ ურთიერთობაზე არჩეული ურთიერთობის სიაში
შეგვიძლია ნულოვანი მნიშვნელობის ჩასმა უცხო გასაღების სვეტში?
NULL მნიშვნელობები უცხო კლავიშში უცხო გასაღები, რომლის სვეტები გამოტოვებულია NOT NULL შეიძლება შეიცავდეს NULL მნიშვნელობებს, მაშინაც კი, თუ პირველადი გასაღები არ შეიცავს NULL მნიშვნელობებს. ამრიგად, თქვენ შეგიძლიათ ჩასვათ რიგები ცხრილში, მაშინაც კი, თუ მათი უცხოური გასაღები ჯერ არ არის ცნობილი
შეუძლია თუ არა უცხო გასაღების სხვა უცხო გასაღების მითითება?
1 პასუხი. უცხო კლავიშს შეუძლია მიმართოს ნებისმიერ ველს, რომელიც განსაზღვრულია როგორც უნიკალური. თუ ეს უნიკალური ველი თავად არის განსაზღვრული, როგორც უცხო გასაღები, არავითარი მნიშვნელობა არ აქვს. თუ ეს უნიკალური ველია, ის ასევე შეიძლება იყოს სხვა FK-ის სამიზნე
შეგვიძლია თუ არა ცხრილში ორი უცხო გასაღების დამატება?
დიახ, MySQL ამის საშუალებას იძლევა. თქვენ შეგიძლიათ გქონდეთ რამდენიმე უცხოური გასაღები იმავე მაგიდაზე. თქვენს სქემაში არსებული უცხოური გასაღებები (Account_Name-ზე და Account_Type-ზე) არ საჭიროებს რაიმე განსაკუთრებულ მკურნალობას ან სინტაქსს. როგორც ჩანს, ამ შემთხვევებიდან ერთი მაინც ეხება მომხმარებლის ცხრილის ID და Name სვეტებს
რა არის მთლიანობის შეზღუდვები, ხსნის რეფერენციალურ მთლიანობას ან საგარეო გასაღების შეზღუდვას?
რეფერენციული მთლიანობა მოითხოვს, რომ უცხოურ გასაღებს უნდა ჰქონდეს შესაბამისი პირველადი გასაღები, ან ის უნდა იყოს ნული. ეს შეზღუდვა მითითებულია ორ ცხრილს შორის (მშობელი და შვილი); ის ინარჩუნებს შესაბამისობას ამ ცხრილებში მწკრივებს შორის. ეს ნიშნავს, რომ მითითება ერთი ცხრილის მწკრივიდან მეორე ცხრილზე უნდა იყოს მართებული