Ola pessoal, eu denovo aqui.
Como o Interclient e o FireBirdsql não funcionou os comandos de navegação, parti pra outra idéia.
O MySql até funciona, mas esse BD não me deu confiança ainda… nem foreign key ele tem suporte, por isso ele é rapido, quando vc faz a consulta ele não testa nada… e ja tenho alguns Sistemas feitos em Delphi rodando Interbase com o mesmo desempenho de outros softwares meus tb rodando em SqlServer.
A minha idéia foi, depois que eu fazer uma consulta no banco de dados, jogar os resultados em uma array to array, e depois de la navegar. por exemplo:
Object [][] Resultado;
O problema é saber quantos resuiltados eu tive no SQL pra mim declarar., as colunas eu vou saber, mas o resultado fica dificil
por exemplo
Resulto = new Object[?][5} por exemplo
agora alguem tem alguma idéia de como eu posso solucionar isso?
Idéia com Array e DataBase
5 Respostas
Uma coisa que muitas vezes é feita é, ao invés de usar uma array bidimensional de cara, colocar arrays dentro de algum objeto de collection, como o ArrayList ou o Vector.
Aí, quando terminar de popular com todos os registros, você pode ver seu tamanho e convertê-lo para uma Array normal.
Não tem a mesma performance, mas funciona.
Outra idéia é utilizar um COUNT no select.
Obrigado Bani
eu não estudei collection ainda, mas vou estudar pra ver o que seria realmente isso.
Sobre por COUNT em um Select, acho que diminui consideravelmente a performance do SQL, se eu começar a transformar meus sistemas pra Java, as base de dados são relativamente grandes, e os meus SQL devem ser o mais enchuto possível.
Mas vou fazer um teste nos dois.
Obrigado pela Ajuda
Uma ArrayList ou um Vector funciona como uma array redimensionável. Você pode ir colocando os elementos nela sem se preocupar com o tamanho.
Veja as respectivas APIs para conhecer os métodos que estão disponíveis para cada um.
Olá,
lembre-se que vc terá limitações de memória. Se o banco contiver muitos dados, carregar toda uma tabela pode estourar o limite de memória.
Dificilmente vai acontecer em uma plicação de baixo/médio porte. Já vi em uma aplicação de data mining, onde um dos "System requirements" era 1GB de memória.
Não sei isso pode ajudar, mas é possível em sua aplicação contar os itens para depois criar o array? Vc poderia criar um array com o número de itens classificados. :-? . Sou iniciante em java mais pensando "algoritmicamente" me veio está solução.