प्रत्येक छात्र रिकॉर्ड में एक सबक्लास कॉलम होगा (तर्क के लिए मान लें कि यह एक चार्ज (1) है)। {ए =एथलीट, एम =संगीतकार...}
अब अपना एथलीट और संगीतकार टेबल बनाएं। उनके पास एक सबक्लास कॉलम भी होना चाहिए, लेकिन उनके द्वारा प्रतिनिधित्व की जाने वाली तालिका के प्रकार के लिए मूल्य को हार्ड-कोडिंग चेक बाधा होनी चाहिए। उदाहरण के लिए, आपको एथलीट टेबल पर सबक्लास कॉलम के लिए 'ए' का डिफ़ॉल्ट और 'ए' की जांच बाधा डालनी चाहिए।
छात्र आईडी और उपवर्ग की समग्र विदेशी कुंजी का उपयोग करके अपने संगीतकार और एथलीट टेबल को छात्र तालिका से लिंक करें। और आपने कल लिया! जाओ एक अच्छे कप कॉफी का आनंद लो।
CREATE TABLE Student (
StudentID INT NOT NULL IDENTITY PRIMARY KEY,
SubClass CHAR(1) NOT NULL,
Name VARCHAR(200) NOT NULL,
CONSTRAINT UQ_Student UNIQUE (StudentID, SubClass)
);
CREATE TABLE Athlete (
StudentID INT NOT NULL PRIMARY KEY,
SubClass CHAR(1) NOT NULL,
Sport VARCHAR(200) NOT NULL,
CONSTRAINT CHK_Jock CHECK (SubClass = 'A'),
CONSTRAINT FK_Student_Athlete FOREIGN KEY (StudentID, Subclass) REFERENCES Student(StudentID, Subclass)
);
CREATE TABLE Musician (
StudentID INT NOT NULL PRIMARY KEY,
SubClass CHAR(1) NOT NULL,
Instrument VARCHAR(200) NOT NULL,
CONSTRAINT CHK_Band_Nerd CHECK (SubClass = 'M'),
CONSTRAINT FK_Student_Musician FOREIGN KEY (StudentID, Subclass) REFERENCES Student(StudentID, Subclass)
);