/* ------------------------------------------------------------------------- Yu Cheng ICS 321 Assignment 2 October 23, 2008 PART 2.2 Using the UPDATE SQL command, update the PERSON table with the assigned badge number as indicated in the BADGE table. Ensure compliance compliance with the Metadata Dictionary provided above. Create a foreign key constraint between the badge number ID in the BADGE table and the badge number in the PERSON table. The Badge Number in the PERSON table can only exist once in the table. ------------------------------------------------------------------------- */ USE DB9975 GO -- Create a foreign key constraint between the badge number ID in the BADGE -- table and the badge number in the PERSON table. Temporarily allow NULL -- values. ALTER TABLE PERSON ADD Badge INT NULL CONSTRAINT FK_PERSON_BADGE FOREIGN KEY (Badge) REFERENCES BADGE(Id) GO -- Using the UPDATE SQL command, update the PERSON table with the assigned -- badge number as indicated in the BADGE table. Ensure compliance -- compliance with the Metadata Dictionary provided above. UPDATE PERSON SET Badge = ( SELECT [Badge Number] AS Badge FROM OPENROWSET ( 'Microsoft.Jet.OLEDB.4.0', 'Excel 8.0;Database=T:\BadgeData.xls;HDR=YES', 'SELECT * FROM [Sheet1$]' ) AS XLS WHERE XLS.[Issued to] = PERSON.Id ) GO -- Ensure compliance compliance with the Metadata Dictionary. Do not allow -- NULL values. ALTER TABLE PERSON ALTER COLUMN Badge INT NOT NULL GO -- The Badge Number in the PERSON table can exist only once in the table. ALTER TABLE PERSON ADD CONSTRAINT UN_PERSON_BADGE UNIQUE (Badge) GO