[firebase-br] RES: TEMPO DE EXECUÇAO SELECT

Fasystem - Listas listas em fasystem.com.br
Sex Abr 13 11:15:39 -03 2012


As dicas que tenho para melhorar consultas são:
1. Nunca usar * na definição dos campos e sim trazer somente as
colunas/campos realmente necessários.
2. Ter índices para os campos referenciados na pesquisa. Lembre-se que ao
usar like "%pesquisa%" fará com que a tabela seja analisada todas as linhas.
Ao usar like tenha em mente que sempre será usado o modo natural de pesquisa
onde é analisada linha a linha do banco de dados para aquele campo. Exceção
é para o like "pesquisa%" quando então é usado o índice.
3. Nunca traga todas as linhas de uma só vez. Traga somente o número
realmente necessário. Fuja de FetchAll para saber o numero de registros
retornados. Para isso utilize outra consulta com os mesmos parâmetros do
where mas com um count(*).
4. São essas que me vêem a mente nesse momento.

Atenciosamente

Jose A. Silva
Fasystem

-----Mensagem original-----
De: lista-bounces em firebase.com.br [mailto:lista-bounces em firebase.com.br] Em
nome de Saulo Nunes
Enviada em: sexta-feira, 13 de abril de 2012 10:58
Para: FireBase
Assunto: Re: [firebase-br] TEMPO DE EXECUÇAO SELECT

minha consulta é essa:
'Select * from FOLHA where '+campo+' like '+''''+'%'+edtLoc.Text+'%'+''''+'
order by CODIGO'

vc diz para eu dropar o campo da tabela?


Em 13 de abril de 2012 10:39, Reijanio Nunes Ribeiro
<rnribeiro em gmail.com>escreveu:

> so separa esse campo blob da consulta que vai ficar bem rapido
>
> Em 13/04/12, Saulo Nunes<saulo em paralink.com.br> escreveu:
> > Bom dia pessoal,
> >
> > tenho uma tabela com 27 mil linhas onde registra todas as horas
> trabalhadas
> > dos funcionarios,
> >
> > CREATE TABLE FOLHA (
> >     CODIGO            CODIGOPK NOT NULL /* CODIGOPK = INTEGER NOT NULL
> */,
> >     DATAC             DATA /* DATA = DATE */,
> >     HORAC             HORA /* HORA = TIME */,
> >     DATAA             DATA /* DATA = DATE */,
> >     HORAA             HORA /* HORA = TIME */,
> >     CODFUNC           CODIGOFK /* CODIGOFK = INTEGER NOT NULL */,
> >     NOMEFUNC          NOME150 /* NOME150 = VARCHAR(150) */,
> >     CODFUNCIONARIO    CODIGOFK /* CODIGOFK = INTEGER NOT NULL */,
> >     SITFUNCIONARIO    NOME50 /* NOME50 = VARCHAR(50) */,
> >     NOMEFUNCIONARIO   NOME150 /* NOME150 = VARCHAR(150) */,
> >     CARGOFUNCIONARIO  NOME150 /* NOME150 = VARCHAR(150) */,
> >     DATA              DATA /* DATA = DATE */,
> >     HORAI             HORA /* HORA = TIME */,
> >     HORAF             HORA /* HORA = TIME */,
> >     HORATOTAL         HORA /* HORA = TIME */,
> >     HORANOITE         HORA /* HORA = TIME */,
> >     MINTRAB           INTEIRO /* INTEIRO = INTEGER */,
> >     MINNOITE          INTEIRO /* INTEIRO = INTEGER */,
> >     MATRICULA         CHAPAM /* CHAPAM = VARCHAR(7) */,
> >     DESCANSO          HORA /* HORA = TIME */,
> >     FOLGA             INTEIRO /* INTEIRO = INTEGER */,
> >     OBS               DESCR /* DESCR = BLOB SUB_TYPE 1 SEGMENT SIZE 1 */
> > );
> >
> > ALTER TABLE FOLHA ADD CONSTRAINT PK_FOLHA PRIMARY KEY (CODIGO);
> >
> > gostaria de acelerar a velocidade da consulta e do commit, alguem tem
uma
> > dica.
> >
> > obrigado!
> >
> >
> > Saulo Nunes
> > ______________________________________________
> > FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> > Para saber como gerenciar/excluir seu cadastro na lista, use:
> > http://www.firebase.com.br/fb/artigo.php?id=1107
> > Para consultar mensagens antigas: http://firebase.com.br/pesquisa
> >
>
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> Para saber como gerenciar/excluir seu cadastro na lista, use:
> http://www.firebase.com.br/fb/artigo.php?id=1107
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>



-- 
Atenciosamente,

*Saulo Nunes
**(91) 8125-6960*
______________________________________________
FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
Para saber como gerenciar/excluir seu cadastro na lista, use:
http://www.firebase.com.br/fb/artigo.php?id=1107
Para consultar mensagens antigas: http://firebase.com.br/pesquisa





Mais detalhes sobre a lista de discussão lista