I am trying to alter tables to add the necessary primary and foreign keys, but I am really struggling to run the code without getting any errors.
The script I have written for adding PKs and FKs is the following:
ALTER TABLE PROJDEPT DROP CONSTRAINT PROJDEPT_pk;
ALTER TABLE EMPLOYEE DROP CONSTRAINT EMPLOYEE_pk DROP CONSTRAINT fk_EMPLOYEE;
ALTER TABLE PROJECT DROP CONSTRAINT PROJECT_pk DROP CONSTRAINT fk_PROJECT;
ALTER TABLE PROJECTTASK DROP CONSTRAINT PROJECTTASK_pk DROP CONSTRAINT fk_PROJECTTASK DROP CONSTRAINT fk_PROJECTTASK2;
ALTER TABLE PROJDEPT ADD CONSTRAINT PROJDEPT_pk PRIMARY KEY (Proj_Dept_ID);
ALTER TABLE EMPLOYEE ADD CONSTRAINT EMPLOYEE_pk PRIMARY KEY (Employee_ID);
ALTER TABLE PROJECT ADD CONSTRAINT PROJECT_pk PRIMARY KEY (Project_ID);
ALTER TABLE PROJECTTASK ADD CONSTRAINT PROJECTTASK_pk PRIMARY KEY (Project_ID, Employee_ID);
ALTER TABLE EMPLOYEE
ADD CONSTRAINT fk_EMPLOYEE
FOREIGN KEY (Proj_Dept_ID)
REFERENCES PROJDEPT(Proj_Dept_ID);
ALTER TABLE PROJECT
ADD CONSTRAINT fk_PROJECT
FOREIGN KEY (Proj_Dept_ID)
REFERENCES PROJDEPT(Proj_Dept_ID);
ALTER TABLE PROJJECTTASK
ADD CONSTRAINT fk_PROJECTTASK FOREIGN KEY (Project_ID) REFERENCES PROJECT(Project_ID),
ADD CONSTRAINT fk_PROJECTTASK2 FOREIGN KEY (Employee_ID) REFERENCES EMPLOYEE(Employee_ID);
The ER Diagram I am trying to put into Oracle is down below. Any help would be greatly appreciated!
Drop the constraints in the reverse order that you create them.
Also, you've misspelt PROJECTTASK
as PROJJECTTASK
.
ALTER TABLE PROJECTTASK DROP CONSTRAINT PROJECTTASK_pk
DROP CONSTRAINT fk_PROJECTTASK
DROP CONSTRAINT fk_PROJECTTASK2;
ALTER TABLE EMPLOYEE DROP CONSTRAINT EMPLOYEE_pk DROP CONSTRAINT fk_EMPLOYEE;
ALTER TABLE PROJECT DROP CONSTRAINT PROJECT_pk DROP CONSTRAINT fk_PROJECT;
ALTER TABLE PROJDEPT DROP CONSTRAINT PROJDEPT_pk;
ALTER TABLE PROJDEPT ADD CONSTRAINT PROJDEPT_pk PRIMARY KEY (Proj_Dept_ID);
ALTER TABLE PROJECT ADD CONSTRAINT PROJECT_pk PRIMARY KEY (Project_ID);
ALTER TABLE PROJECT
ADD CONSTRAINT fk_PROJECT
FOREIGN KEY (Proj_Dept_ID)
REFERENCES PROJDEPT(Proj_Dept_ID);
ALTER TABLE EMPLOYEE ADD CONSTRAINT EMPLOYEE_pk PRIMARY KEY (Employee_ID);
ALTER TABLE EMPLOYEE
ADD CONSTRAINT fk_EMPLOYEE
FOREIGN KEY (Proj_Dept_ID)
REFERENCES PROJDEPT(Proj_Dept_ID);
ALTER TABLE PROJECTTASK ADD CONSTRAINT PROJECTTASK_pk PRIMARY KEY (Project_ID, Employee_ID);
ALTER TABLE PROJECTTASK
ADD CONSTRAINT fk_PROJECTTASK FOREIGN KEY (Project_ID) REFERENCES PROJECT(Project_ID);
ALTER TABLE PROJECTTASK
ADD CONSTRAINT fk_PROJECTTASK2 FOREIGN KEY (Employee_ID) REFERENCES EMPLOYEE(Employee_ID);
db<>fiddle here
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.