Chave estrangeira em java

0 respostas
lincolngadea

Bom dia a todos,

Estou com uma dúvida e gostaria que me ajudassem,

tenho uma chave estrangeira na minha tabela de membro, ela gera um codigo com o nome “DISC_CODIGO” (chave estrangeira;

preciso que no meu form de membro apareça esse código e ao lado um Jcombobox com a lista das referencias do código;

Já consegui listar no JCB os nomes atravez desse código:

public class Cad_membros extends javax.swing.JFrame {

int navega = 0;

BancoConect con_membros;

BancoConect con_discipulador;

String ordenacao = MEM_NOME;

boolean primeiraVezDiscipulador = true;

/** Creates new form Cad_membros */

public Cad_membros() {

initComponents();

con_membros = new BancoConect();

con_membros.conecta();

con_membros.executeSQL("select * from membros order by " +ordenacao);

con_discipulador = new BancoConect();

con_discipulador.conecta();

con_discipulador.executeSQL(select * from discipulador order by DISC_NOME);
try {
         while(con_discipulador.resultSet.next())
             jcb_memb_discip.addItem(con_discipulador.resultSet.getString("DISC_NOME"));
        atualisa_cbbox();
        con_membros.resultSet.first();
        con_discipulador.resultSet.first();
        
        mostrar_dados();
    } catch (SQLException erro) {
        JOptionPane.showMessageDialog(null, "ATENÇÃO! O SEU BANCO DE DADOS ESTÁ VAZIO");
    }
}

o s metodos usados são esses :

public void atualisa_cbbox()

{

try

{

while(con_discipulador.resultSet.next())

jcb_memb_discip.addItem(con_discipulador.resultSet.getString(DISC_NOME));

}

catch(SQLException erro)

{

JOptionPane.showMessageDialog(null, erro);

}

}

public void mostrar_dados() {

try {

tf_cod.setText(con_membros.resultSet.getString(MEM_CODIGO));

tf_membro.setText(con_membros.resultSet.getString(MEM_NOME));

tf_rg.setText(con_membros.resultSet.getString(MEM_RG));

tf_cpf.setText(con_membros.resultSet.getString(MEM_CPF));

cbx_estadoCivil.setSelectedItem(con_membros.resultSet.getString(MEM_ESTCIVIL));

cbx_prof.setSelectedItem(con_membros.resultSet.getString(PROF_CODIGO));

cbx_cidade.setSelectedItem(con_membros.resultSet.getString(CID_CODIGO));

tf_cep.setText(con_membros.resultSet.getString(MEM_CEP));

cbx_Bairro.setSelectedItem(con_membros.resultSet.getString(MEM_BAIRRO));

tf_rua.setText(con_membros.resultSet.getString(MEM_RUA));

tf_numero.setText(con_membros.resultSet.getString(MEM_NUMERO));

tf_complemento.setText(con_membros.resultSet.getString(MEM_COMPLEMENTO));

tf_telfixo.setText(con_membros.resultSet.getString(MEM_TELRES));

tf_telcel.setText(con_membros.resultSet.getString(MEM_TELCELULAR));

tf_recados.setText(con_membros.resultSet.getString(MEM_TELRECADO));

tf_email.setText(con_membros.resultSet.getString(MEM_EMAIL));

tf_msn.setText(con_membros.resultSet.getString(MEM_MSN));

tf_orkut.setText(con_membros.resultSet.getString(MEM_ORKUT));

tf_dataCad.setText(con_membros.resultSet.getString(MEM_DATACAD));

tf_dataNasc.setText(con_membros.resultSet.getString(MEM_DATANASC));

tf_dataBat.setText(con_membros.resultSet.getString(MEM_DATABAT));

// tf_disc_codigo.setText(con_membros.resultSet.getString(“DISC_CODIGO”)); (QUANDO COLOCO ESSA LINHA NO CÓDIGO, APARECE UM CÓDIGO ESTÁTICO NO TEXTFIELD E NÃO MUDA
} catch (SQLException erro) {
        if (navega == 1) {
            JOptionPane.showMessageDialog(null, "Primeiro registro!");
        } else if (navega == 2) {
            JOptionPane.showMessageDialog(null, "Último registro");
        } else {
            JOptionPane.showMessageDialog(null, "ATENÇÃO! Não foi encontrado nenhum dado em seu Banco");
        }
    }
}

Preciso que toda vez que eu selecionar um item no JCB altomaticamente apareça o código do lado e quando eu digitar o código apareça em seguida o item…

DENTRO DO JCB EU SETEI ESSE CÓDIGO:

if(primeiraVezDiscipulador == false)

{

try

{

String sql = select * from discipulador Where DISC_NOME like ' +jcb_memb_discip.getSelectedItem()+"’";

con_discipulador.executeSQL(sql);

con_discipulador.resultSet.first();

//int regcodigo = con_discipulador.resultSet.getInt(“DISC_CODIGO”);

while(con_discipulador.resultSet.next())

tf_disc_codigo.setText(con_discipulador.resultSet.getString(DISC_CODIGO));

}

catch(SQLException erro)

{

JOptionPane.showMessageDialog(null,Erro ao inserir código no campo +erro);

}

}
Criado 15 de fevereiro de 2010
Respostas 0
Participantes 1