Based on your edit, I'm thinking this is waht you're after?
CREATE TABLE table1
(
ID INTEGER NOT NULL
IDENTITY(1, 1) ,
Code VARCHAR(50) NOT NULL ,
PRIMARY KEY ( ID) , --code makes no sense in the Primary Key when ID is
UNIQUE ( code )
);
CREATE TABLE table2
(
ID INTEGER NOT NULL
IDENTITY(1, 1) ,
Code VARCHAR(50) NOT NULL ,
PRIMARY KEY ( ID, Code ) ,
CONSTRAINT fkey FOREIGN KEY ( Code ) REFERENCES table1 ( Code )
);
Code needs to be unique in the key table.