You need to design a student registration database that contains several tables storing
academic information. The STUDENTS table stores information about a student. The
STUDENT_GRADES table stores information about the student’s grades. Both of the tables
have a column named STUDENT_ID. The STUDENT_ID column in the STUDENTS table is
a primary key. You need to create a foreign key on the STUDENT_ID column of the
STUDENT_GRADES table that points to the STUDENT_ID column of the STUDENTS
table. Which statement creates the foreign key?
A.
CREATE TABLE student_grades (student_id NUMBER(12),semester_end DATE, gpa
NUMBER(4,3), CONSTRAINT student_id_fk REFERENCES (student_id) FOREIGN KEY
students(student_id));
B.
CREATE TABLE student_grades(student_id NUMBER(12),semester_end DATE, gpa
NUMBER(4,3), student_id_fk FOREIGN KEY (student_id) REFERENCES
students(student_id));
C.
CREATE TABLE student_grades(student_id NUMBER(12),semester_end DATE, gpa
NUMBER(4,3), CONSTRAINT FOREIGN KEY (student_id) REFERENCES
students(student_id));
D.
CREATE TABLE student_grades(student_id NUMBER(12),semester_end DATE, gpa
NUMBER(4,3), CONSTRAINT student_id_fk FOREIGN KEY (student_id) REFERENCES
students(student_id));
Please also note that when you specify a foreign key constraint inline, you need only the reference_clause but when you specify a foreign key constraint out of line (as they are presented in this question), you must also specify the foreign key keywords and one or more columns.
Long story short… D is the correct answer.