If you have any doubts, please give me comment...
COLLEGE(CName, COffice, Cphone, deanId);
FOREIGN KEY deanID REFERENCES INSTRUCTOR(id)
DEPT(Dcode, DName, DOffice, Dphone, CName, ChairID, CStartDate);
FOREIGN KEY CName REFERENCES COLLEGE(CName);
FOREIGN KEY ChairID REFERENCES INSTRUCTOR(id);
INSTRUCTOR(id, Rank, IName, IOffice, IPhone, DCode);
FOREIGN KEY DCode REFERENCES DEPT(DCode)
COURSE(CCode, Credits, CoName, Level, CDesc, DCode);
FOREIGN KEY DCode REFERENCES DEPT(DCode)
SECTION(SecId, SecNo, Sem, Year, CRoomBldg, CRoomRoomNo, DaysInTime, CCode, InstrId);
FOREIGN KEY InstID REFERENCES INSTRUCTOR(id);
FOREIGN KEY CCode REFERENCES COURSE(CCode);
STUDENT(SId, FName, MName, LName, DOB, Addr, Phone, Major, DCode);
FOREIGN KEY DCode REFERENCES DEPT(DCode)
TAKES(SId, SecId, Grade);
FOREIGN KEY SId REFERENCES STUDENT(SId)
FOREIGN KEY SecId REFERENCES SECTION(SecId)
SQL:
CREATE TABLE INSTRUCTOR(
id INT NOT NULL PRIMARY KEY,
Rank VARCHAR(10),
IName VARCHAR(50),
IOffice VARCHAR(50),
IPhone VARHCAR(15),
DCode CHAR(5)
);
CREATE TABLE COLLEGE(
CName VARCHAR(50),
COffice VARCHAR(50),
Cphone VARCHAR(15),
deanId INT,
FOREIGN KEY(deanID) REFERENCES INSTRUCTOR(id)
);
CREATE TABLE DEPT(
Dcode VARCHAR(5) NOT NULL PRIMARY KEY,
DName VARCHAR(50) UNIQUE,
DOffice VARCHAR(50),
Dphone VARCHAR(15),
CName VARCHAR(50),
ChairID INT,
CStartDate DATE,
FOREIGN KEY (CName) REFERENCES COLLEGE(CName),
FOREIGN KEY (ChairID) REFERENCES INSTRUCTOR(id)
);
CREATE TABLE COURSE(
CCode CHAR(6) NOT NULL PRIMARY KEY,
Credits INT,
CoName VARCHAR(50) UNIQUE,
Level INT,
CDesc VARCHAR(100),
DCode CHAR(5),
FOREIGN KEY(DCode) REFERENCES DEPT(DCode)
);
CREATE TABLE SECTION(
SecId INT NOT NULL PRIMARY KEY,
SecNo INT,
Sem VARHCAR(10),
Year INT,
CRoomBldg VARHCAR(20),
CRoomRoomNo VARCHAR(20),
DaysInTime VARCHAR(50),
CCode CHAR(6),
InstrId INT,
FOREIGN KEY(InstID) REFERENCES INSTRUCTOR(id),
FOREIGN KEY(CCode) REFERENCES COURSE(CCode)
);
CREATE TABLE STUDENT(
SId INT NOT NULL PRIMARY KEY,
FName VARCHAR(50),
MName VARCHAR(5),
LName VARCHAR(50),
DOB DATE,
Addr VARCHAR(50),
Phone VARCHAR(15),
Major VARCHAR(10),
DCode VARCHAR(5),
FOREIGN KEY (DCode) REFERENCES DEPT(DCode)
);
CREATE TABLE TAKES(
SId INT,
SecId INT,
Grade CHAR(1),
FOREIGN KEY (SId) REFERENCES STUDENT(SId),
FOREIGN KEY (SecId) REFERENCES SECTION(SecId)
);
ALTER TABLE INSTRUCTOR ADD FOREIGN KEY(DCode) REFERENCES DEPT(DCode);
Let me know if any errors raised, Thank you...
2. The following figure shows an ER schema for a university database. a) Map this schema...
The following figure shows an ER schema for a database that can be used to keep track of transport ships and their locations for maritime authorities. Map this schema into a relational schema and specify all primary keys and foreign keys. Use arrows to specify the relationships. Use descriptive names for foreign keys.