[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