Compound Primary key is a primary key which is created on more than one column. Now the questions is how to create the foreign key for the compound primary key where it references more than one column.
Check the below example.
create table employee ( empID int not null, SSN int not null, name varchar(20) ) ALTER TABLE [employee] ADD CONSTRAINT pk_employee PRIMARY KEY (empID, SSN) create table EmpDetail ( empID int, SSN int, address varchar(20), city varchar(20), pin varchar(20) ) ALTER TABLE dbo.empDetail ADD CONSTRAINT FK_Employee FOREIGN KEY(empID, SSN) REFERENCES dbo.employee(empID, SSN) SELECT tc.TABLE_NAME, tc.CONSTRAINT_NAME, ccu.COLUMN_NAME FROM INFORMATION_SCHEMA.TABLE_CONSTRAINTS tc INNER JOIN INFORMATION_SCHEMA.CONSTRAINT_COLUMN_USAGE ccu ON ccu.TABLE_NAME = tc.TABLE_NAME AND ccu.CONSTRAINT_NAME = tc.CONSTRAINT_NAME WHERE tc.TABLE_NAME IN ('employee','employeeDetail')
Filed under: Database, SQL Server, SQL Server 2008, SQL Server 2008 R2, SQL Server 2011 (Denali) Tagged: Compound Key, Foreign Key, SQL, SQL Constraint and Keys, SQL Query, SQL Scripts, SQL Server, SQL Tips and Tricks, T-SQL, Technology