Estatísticas do sistema
Tenho um form de estatísticas do meu programa. Nesse form tem vários botões, por exemplo, num deles, tem a função de mostrar o tanto de cadastros feitos em uma tabela. Mas não sei o código, pois usava paradox e agora que migrei para firebird o código não funciona.
Como faço?
Uso palheta InterBase, bd firebird.
Obrigado.
Como faço?
Uso palheta InterBase, bd firebird.
Obrigado.
Iniciante12345
Curtidas 0
Respostas
Daniel_mc
30/09/2005
Amigo, como nunca usei Firebird não posso te dar certeza, mas em MySQL usando Query´s por exemplo vc poderia fazer isto de várias formas:
Dando uma instrução SQL:
Assim não é muito recomendado, mas caso seja pequena a tabela:
Ou Criando uma variável para armazenar o numero de registros dentro de um Loop:
Agora isto se o numero de Cadastros for o numero de registros da tabela
Dando uma instrução SQL:
Select Count(*) from Tabela
Assim não é muito recomendado, mas caso seja pequena a tabela:
Query.RecordCount;
Ou Criando uma variável para armazenar o numero de registros dentro de um Loop:
Cont:=0; While not Query.Eof do Begin Cont:=cont+1; query.next; end;
Agora isto se o numero de Cadastros for o numero de registros da tabela
GOSTEI 0
Iniciante12345
30/09/2005
Então quer dizer que o segundo código, se quando a tabela estiver muito cheia, ele não funcionará? Será que até uns 50 mil funciona?
GOSTEI 0
Sremulador
30/09/2005
você até pode usar o recordcount desde que de uma olhada geral na tabela tipo um fetchall outra maneira seria um count (qualquer campo)
GOSTEI 0
Iniciante12345
30/09/2005
Bom. É o seguinte, eu tentei o último código e ficou assim (normalmente, ao clicar num botão que tem que mostrar uma mensagem com o resultado):
procedure TFrmEstatisticas.BitBtn1Click(Sender: TObject);
var Cont: integer;
StrCont: string;
begin
Cont:=0;
While not IbLivros.Eof do
Begin
Cont:=cont+1;
IbLivros.next;
end;
StrCont := IntToStr(Cont);
ShowMessage(StrCont);
end;
Mas não dá certo. O que ele mostra, independente do tanto de cadastros, é 0.
O que tem de errado???
Onde tenho que usar esse código que me passaram? Há outra forma de fazer o que quero? Por favor, me ajudem com os passos certos.
Agradeço.
procedure TFrmEstatisticas.BitBtn1Click(Sender: TObject);
var Cont: integer;
StrCont: string;
begin
Cont:=0;
While not IbLivros.Eof do
Begin
Cont:=cont+1;
IbLivros.next;
end;
StrCont := IntToStr(Cont);
ShowMessage(StrCont);
end;
Mas não dá certo. O que ele mostra, independente do tanto de cadastros, é 0.
O que tem de errado???
Onde tenho que usar esse código que me passaram? Há outra forma de fazer o que quero? Por favor, me ajudem com os passos certos.
Agradeço.
GOSTEI 0