Eu to com um problema de banco de dados, onde eu tenho 4 tabelas.
1 tabela puxa chave estrangeira(codigo) das outras 3 tabelas.
quando eu criei meu Bean, eu criei 4 atributos int(cod_bean + 3 cod_chavesEstrangeiras), agora eu tenho uma duvida, quando eu faço o INNER JOIN pela consulta, ele me retorna os nomes, que ao invés de mostrar o codigo eu vou mostrar o nome mesmo no datatable, mas como e onde eu devo guardar esse nome no meu Bean se eu não tenho os atributos do tipo String,eu tenho que criar 3 objetos dentro dessa classe Bean pra poder armazenar esse nome?
Seria interessante você postar sua consulta e sua bean aqui para podermos analisar, se é que você já tem elas.
L
lymoreira
OK, segue a consulta:
publicList<HorasTrabBean>consultaHorasAdmin(){try{ResultSetrs=stm.executeQuery("SELECT fk_cd_func as cod_func, fk_cd_atividade as cod_ativ, fk_cd_sistema as cod_sis, Sum(HORAS_TRAB.nr_qtd_horas) AS soma FROM HORAS_TRAB GROUP BY fk_cd_func, fk_cd_atividade, fk_cd_sistema");list_horasTrab.clear();while(rs.next()){HorasTrabBeanhora=newHorasTrabBean();hora.funcionario_hora.setCodigo_func(rs.getInt("cod_func"));hora.atividades_hora.setCodigo(rs.getInt("cod_ativ"));hora.sistemas_hora.setCodigo(rs.getInt("cod_sis"));intdecimalPlace=2;BigDecimalbd=newBigDecimal(rs.getDouble("soma"));bd=bd.setScale(decimalPlace,BigDecimal.ROUND_HALF_UP);doublehoras=bd.doubleValue();hora.setHoras(horas);list_horasTrab.add(hora);}rs.close();}catch(SQLExceptione){JOptionPane.showMessageDialog(null,e.getMessage(),"Erro",0);}returnlist_horasTrab;}
eu coloquei sem o INNER JOIN primeiro, mais mesmo assim ele da erro quando vai guardar os cods.
e também tenho um MB que faz a interação dos 2.(onde tem a lista e o próprio Bean).
Valeu.
L
lincolnti
Essas colunas cod_func, cod_ativ e cod_sis que você está setando nas variáveis
estão retornando valores do tipo texto ou númericos? Pelos nome das colunas parece retornar números(códigos).
Se essas colunas estão retornando alfanuméricos você precisa seta-las em variáveis String.
L
lymoreira
elas são do tipo numéricos, ele retorna valor inteiro.
L
lincolnti
Se eu estiver errado me corrija, pois ainda estou tentando entender exatamente o que você quer.
Seu SELECT não está retornando o que você quer.
Você quer buscar o nome da função, atividade, etc… certo?
Se sua consulta realmente não retorna o que você quer, monte uma consulta
que retorne apenas aquilo que você quer usar. Depois crie variáveis do tipo String
para receber os alfatnuméricos do BD.
L
lymoreira
na verdade a minha duvida é se eu tenho que criar atributos do tipo String no meu Bean só para armazenar esses nomes que virão do SELECT,
ou se tem um jeito mais facil de fazer?
L
lincolnti
lymoreira, eu desconheço uma outra forma. Crie atributos do tipo String.
L
lymoreira
Bom, valeu pessoal, vou fazer assim mesmo, e obrigado.