Boa noite pessoal, tenho um trabalho de faculdade para ser entregue mais ele estar dando erro, eu criei  duas tabelas e depois quero criar uma foreign key de uma pra outra   create table professor( mat_professor    int         not null, nom_professor    varchar(50) not null, rg               int         null, cpf              int         not null, classificacao    varchar(12) null, rua              varchar(50) null, num_rua          int         null, cep              int         null, complemento      varchar(50) null, cidade           varchar(50) null, estado           char(2)     null, cod_departamento int         not null,  constraint pk_professor01 primary key (mat_professor, cpf) )  create table departamento( cod_departamento int         not null, nom_departamento varchar(50) not null, bloco            varchar(10) not null, ramal            varchar(10) not null, mat_professor    int         not null,  constraint pk_departamento primary key (cod_departamento, nom_departamento), )  essas são as duas tabelas, dai eu vou dar um alter table   alter table professor  add constraint fk_professor_departamento foreign key (cod_departamento)                                            references departamento(cod_departamento)   mais da o seguinte erro   Msg 1776, Level 16, State 0, Line 1 There are no primary or candidate keys in the referenced table 'departamento' that match the referencing column list in the foreign key 'fk_professor_departamento'. Msg 1750, Level 16, State 0, Line 1 Could not create constraint. See previous errors.  como eu faço para consegue compilar ? já tentem de praticamente tudo e não da certo! grato desde já!