Erro mysql

Alguem sabe me dizer se quando declaramos as variáveis de uma classe e umas dessas váriaveis é uma fk, temos q declarar de uma forma diferente pois estpou declarando dessa forma:

public class ClasseRaca { private Integer id; private String descricao; private Integer idReg; (fk) }
pois ao tentar inserir um registro ele me retorna o seguinte erro:

Cannot add or update a child row: a foreign key constaint faiils.

Pelo q eu entendi naum está achando o registro da tabela pai, mas naum consigo resolver esse problema…
Alguém já passou por coisa parecida…ou sabe como resolver esse problema.

Bom dia, Alex!

Não seria melhor, ao invés de colocar:

private Integer idReg;

Algo como

private ObjetoDequemIdRegEhChave reg;

?

mais uma perguntinha felipe…como eu capturo…?

[code]if(jDescricao.getText().length()==0){
JOptionPane.showMessageDialog(null, “Preencha todos os campos!”);
}else{
ClasseRaca raca = new ClasseRaca();
raca.setDescricao(jDescricao.getText());
raca.setIdReg(jComboBoxReg.getSelectedItem().toString());

 raca.incluirRaca();
 
 jDescricao.setText("");
 jDescricao.requestFocus();
}
}             [/code] 

tá dando erro pois ele tá pedindo p/ mim criar um setIdreg n classe mas já está criado.

[code] public ClasseReguladora getIdReg() {
return idReg;
}

public void setIdReg(ClasseReguladora idReg) {
    this.idReg = idReg;
}[/code]

Você está passando uma String no método setIdReg, quando deveria ter passado um objeto do tipo ClasseReguladora, por isso o compilador está reclamando.

e como eu passo um Objeto?