Post on 31-Dec-2015
description
CSE470 Software Engineering Fall 2000 1
More SQL – Specifying Foreign Keys
• STUDENTS
Consider the following tables, STUDENTS & GRADES
ID NAME DOJ EMAIL
10001 Sparty 1/1/1855 sparty@msu.edu
… … … …
•GRADESSTU_ID COURSE GRADE
10001 MTH101 4.0
10001 CEM101 3.5
… … …
CSE470 Software Engineering Fall 2000 2
Specifying Foreign Keys…• The table GRADES has a foreign-key relationship
with table STUDENTS, i.e., for every value of STU_ID in GRADES there must be a record with a matching ID in STUDENTS
• The SQL statements to create the two tables will be as follows:– SQL to create table STUDENTS:
CREATE TABLE STUDENTS ( ID INTEGER, NAME CHAR(30), DOJ DATETIME, EMAIL CHAR(30), CONSTRAINT PK_STUDENTS PRIMARY KEY (ID))
CSE470 Software Engineering Fall 2000 3
Specifying Foreign Keys…
– SQL to create table GRADES, with foreign key
CREATE TABLE GRADES (
STU_ID INTEGER,
COURSE CHAR(6),
GRADE DECIMAL(2,1),
CONSTRAINT PK_GRADES
PRIMARY KEY (STU_ID, COURSE),
CONSTRAINT FK_GRADES FOREIGN KEY (STU_ID) REFERENCES STUDENTS)