(Novato no Clube) Dúvidas em SQL

Delphi

03/09/2003

Olá Pessoal..

Qual é a melhor maneira de trabalhar com filtros?
Via SQL ou Table??

Desde já agradeço!!


Igor

Igor

Curtidas 0

Respostas

Lulinha

Lulinha

03/09/2003

Eu prefiro com table!
Tem uma propriedade filtered (true->filtrado ou false->desfiltrado)
Abraço!
Luís Ledebour


GOSTEI 0
Marcelo Marim

Marcelo Marim

03/09/2003

Eu prefiro trabalhar com query, pois a query disponibiliza para você somente os registros que se enquadrarem no select, enquanto que o table disponibiliza todos os registros e só mostra o que você colocar na propriedade filter. Ex: Supondo uma tabela de clientes com 5 mil registros. Destes 5 mil registros, 3 mil estão ativos e 2 mil inativos, ok? Imaginando que você queria apenas os clientes ativos. Utilizando a query, você fará um código parecido com ´SELECT * FROM CLIENTES WHERE ATIVO = ´A´´ (com isso serão lidos e mostrados 3 mil registros). Utilizando o table, serão lidos 5 mil e mostrados 3 mil). A query é mais eficiente.

Espero que você tenha entendido minha mensagem.

Abraço.


GOSTEI 0
Igor

Igor

03/09/2003

[quote:5730caf460=´Marcelo Marim´]Eu prefiro trabalhar com query, pois a query disponibiliza para você somente os registros que se enquadrarem no select, enquanto que o table disponibiliza todos os registros e só mostra o que você colocar na propriedade filter. Ex: Supondo uma tabela de clientes com 5 mil registros. Destes 5 mil registros, 3 mil estão ativos e 2 mil inativos, ok? Imaginando que você queria apenas os clientes ativos. Utilizando a query, você fará um código parecido com ´SELECT * FROM CLIENTES WHERE ATIVO = ´A´´ (com isso serão lidos e mostrados 3 mil registros). Utilizando o table, serão lidos 5 mil e mostrados 3 mil). A query é mais eficiente.

Espero que você tenha entendido minha mensagem.

Abraço.[/quote:5730caf460]


Valeu pela dica aí pessoal, ajudou bastante o meu entendimento!!!


GOSTEI 0
Wicker Man

Wicker Man

03/09/2003

Caro Amigo,

se seu BD conter muitos registros é essencial que vc trabalhe com Querys, pois ela so retornara o q vc quiser, ao contrario do table que vai carregar tudo em memória p/ depois filtrar. É aconselhavel, se o projeto for grande, que vc não use o table para nada, use querys e updatesql, seu sistema vai ficar mais rápido e vc pode tratar tudo via sql e pl/sql.

Abraços.


GOSTEI 0
Igor

Igor

03/09/2003

Valeu pessoal pelas dicas!

Bom com query eu ja tentei e deu certo, mas eu acho que fica muito lento qdo eu trabalho com uma tabela com um grande numero de registros, principalmente qdo ordeno o GRID conforme a coluna clicada.
Entende??
Cada vez que que eu preciso ordenar os campos é necessário que eu feche a Query, adicione ´ORDERY BY campo´ e execute a query. Isso deixa o sistema um pouco lento.
Não ha modo mais rapido para fazer isto?

Um abração colegas!!


GOSTEI 0
POSTAR