More SQL – Specifying Foreign Keys

3
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/185 5 [email protected] u •GRADES STU_ID COURSE GRADE 10001 MTH101 4.0 10001 CEM101 3.5

description

STUDENTS. More SQL – Specifying Foreign Keys. Consider the following tables, STUDENTS & GRADES. GRADES. Specifying Foreign Keys…. - PowerPoint PPT Presentation

Transcript of More SQL – Specifying Foreign Keys

Page 1: More SQL – Specifying Foreign Keys

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 [email protected]

… … … …

•GRADESSTU_ID COURSE GRADE

10001 MTH101 4.0

10001 CEM101 3.5

… … …

Page 2: More SQL – Specifying Foreign Keys

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))

Page 3: More SQL – Specifying Foreign Keys

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)