Então to um sisteminha de busca aki, e eu to kerendo fazer um negocio assim qdo o usuario clicar no botao de busca por nome talz, isso pode retornar mais q 1 Funcionario ai eu keria um Jlabel que me informasse tipo 1 Funcionario de 3 Retornados…
Certo…
StringSQL="select count(nome) as nr, nome from suaTabela where nome = ? group by nome";//Depois você pega no resultset o nr de repetições o o nome que retornar.rs.getInt("nr");rs.getString("nome");
Era +/- isso que precisava?
[]´s
colored
Então eu Pensei mais o menos isso…
mas eu preciso fazer isso dentro de uma outra consulta entende?
Tipo eu um select lah like pa…
retorno
Paulo
Patricia
Paula
Paola
Certo.
Ai dentro desse select q eu kero mostrar 1 Funcionario de 4 Retornados…
Deu Pra entender x)?
yorgan
Dai eu não vejo sentido de usar um jLabel…pois se você informar 2 letras e tiverem 10 resultados, como você vai determinar qual o que vai ser exibido. Tudo bem que você pode dizer “vai ser o primeiro por ordem alfabetica”, mas como o usuário vai saber qual ele quer? Eu sugiro então que utilize ao invés do jLabel um comboBox, ou quando quando o resultset trouxer mais de um resultado, você salte um jpanel com uma lista e o usuário clica no nome que ele estava buscando.
[]´s
T
Thiago_veiga
pode usar o metodo getRow() da classe ResulSet que te retorna um int dizendo em qual linha da consulta realizada no banco vc esta
e fazer um select count para saber quantos registros retornaram
T
Thiago_veiga
acho q ficaria legal um Jframe com um JLabel mostrando o registro atual e dois JButton com funcoes proximo e anterior ai vc pode colocar 1 de x ou de 2 de x , etc
sendo o registro atual determinado pelo getRow e o total por um select count
colored
Yorgan Label Foi a primeiro coisa q veio na cabeça dps eu penso num jeito melhor kkkk…
thiago.
Tipo eh do getrow eu vi mesmo.
mas o problema eh q eu tenho q tipo fazer 1 select dentro de um resultado de outro select
colored
Thiago eh assim mesmo q vai funcionario…
os botoes < > >> << tao funfando jah…
so falta esse detalhezinho para mostrar qtos registros foram retornandos e em qual ele esta
yorgan
e não pode ser um contador dentro do seu while?
tipo:
Eu Pensei nisso tb, mas n sei como eu fiz mas meu metodo de retornar os dados n tem nenhum laço kkkk.
olha soh
public void TrazerDados(){
try{
String sql = null;
if(radio1.isSelected()){
sql = "Select * From Funcionario where Fun_Nome like ? order by fun_nome";
ps = c.prepareStatement(sql, ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_READ_ONLY);
ps.setString(1, txtBusca.getText().toUpperCase() + "%");
}
else if(radio2.isSelected()){
sql = "Select * From Funcionario where Fun_Cpf = ? order by fun_nome";
ps = c.prepareStatement(sql, ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_READ_ONLY);
ps.setString(1, txtBusca.getText().toUpperCase());
}
rs = ps.executeQuery();
rs.last();
ultimo = (int) rs.getLong("fun_id");
rs.first();
primeiro = (int) rs.getLong("fun_id");
atualizaCampos();
DesTravado();
}
catch (SQLException e) {
JOptionPane.showMessageDialog(null,"Funcionario não Encontrado!", "Nenhum Resultado Retornado Na Busca",1);
LimparCampos();
Travado();
return;
}
}
T
Thiago_veiga
ve se isso ajuda
pode usar tb o union na query como neste exemplo
ou pode usar o getrow de novo no fim loop da select , usar o last pra te levar ao ultimo registro
colored
Hum tipo assim…
eu precisaria d dois resultados nas querys e nao um soh…
tipo eu faço o select da busca normal, e desse select fazer o select com o count…
pq o normal eu preciso setar nos campos e do count apenas pra saber qtos pioes a busca retornou…
T
Thiago_veiga
da uma olhada neste metodo getMaxrows() da classe Statement
colored
Isso ai eh so pra obter o nº maximo q vc ker no Statement…
Tipo vc seta antes e dps se kiser saber qtos ai vc chama esse metodo.
T
Thiago_veiga
Acho q se fizer rs.getStatement().getMaxRows(); sem setar um valor maximo para o statement traz o valor maximo que existe ou seja o que o ResultSet trouxe
ou pode depois do last() que usou como ja esta na ultima linha pegar o numero dela com o getRow()
colored
Ah fiz um eskeminha aki…
joguei 1 while mesmo la no meio do metodo dps q ele executa pra joga numa variavel pra mim x)…