Idéia com Array e DataBase

5 respostas
M

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?

5 Respostas

B

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.

M

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

B

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.

F

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.

F

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.

Criado 20 de fevereiro de 2003
Ultima resposta 1 de mar. de 2003
Respostas 5
Participantes 4