Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

dolci

Busca em ASP

Recommended Posts

Estou com um banco de dados em SQL Server com 40.000 (Quarenta mil registros), mas uma busca, mas está demorando muito pra buscar, devido ao grande número de registros, o que devo fazer? Alguém dá um força, veja abaixo o meu select de busca:

set RS = Server.CreateObject("ADODB.Recordset")palavra = request("palavra")sql = "select Cod, Data,Titulo,Release,liberado from noticias where Release like '%" & palavra & "%' and liberado = 1 order by Data desc "RS.Open sql, strConn

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tbm tenho um select aqui com muitos registros, tenta ver algo sobre procedures ai você nao precisa executar a query no seu programa e sim no banco e uma otima opcao quando queremos deixar o processo mais rapido.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Galera, não viaja desse jeito vcs vão confundir tudo...

 

Estou com um banco de dados em SQL Server com 40.000 (Quarenta mil registros), mas uma busca, mas está demorando muito pra buscar, devido ao grande número de registros, o que devo fazer?

 

Alguém dá um força, veja abaixo o meu select de busca:

 

set RS = Server.CreateObject("ADODB.Recordset")

palavra = request("palavra")

sql = "select Cod, Data,Titulo,Release,liberado from noticias where Release like '%" & palavra & "%' and liberado = 1 order by Data desc "

RS.Open sql, strConn

Oq deve estar prejudicando o desempenho da consulta é o fato de você utilizar o comando LIKE, que realiza uma comparação de cada caracter do campo RELEASE.

 

Checa as chaves primarias da tabela, tenta usar elas.

Como nesse SELECT não tem nenhum relacionamento de tabelas as chaves de indexação só inteferem no WHERE, porém, se os campos de comparação não podem ser substituidos não há como melhorar pela indexação otimizada.

 

você coloco o <%option explicit%>

????

Option Explicit não tem relação com SQL e não interfere no desempenho da consulta.

 

<_< ...

Compartilhar este post


Link para o post
Compartilhar em outros sites

no desempenho do ASP eu sei que ajuda em alguma coisa..esperimenta usar no inicio da pagina..o problema de usar ele é que você vai precisar declarar todas as variaves corretamente.... <_< isso enxe o saco.. mais melhora

Compartilhar este post


Link para o post
Compartilhar em outros sites

na verdade acho dificil sql server ficar lento com essa quantidade de registros.... ja trabalhei com cerca de 200 mil registro e não tive problema de desempenho..quem sabe o problema nao ta no servidor de debuggação do codigo

Compartilhar este post


Link para o post
Compartilhar em outros sites

Dolci, Mas há necessidade e exibição de todos esses registros em tela?Verique melhor pois pode ser desnecessários..Abraços

isso é verdade, você não precisa exibir muitos registros ao mesmo tempo, que tal uma paginação???

Compartilhar este post


Link para o post
Compartilhar em outros sites

Estou com um banco de dados em SQL Server com 40.000 (Quarenta mil registros), mas uma busca, mas está demorando muito pra buscar, devido ao grande número de registros, o que devo fazer?

 

Alguém dá um força, veja abaixo o meu select de busca:

 

set RS = Server.CreateObject("ADODB.Recordset")

palavra = request("palavra")

sql = "select Cod, Data,Titulo,Release,liberado from noticias where Release like '%" & palavra & "%' and liberado = 1 order by Data desc "

RS.Open sql, strConn

A questão não é só a qtde de registros e sim o tipo de busca um WHERE LIKE em 40.000 é muito mais pesado que um WHERE COD = 1 em 500.000.

 

Dolci, você ja realizou o teste de desempenho no SQL independente da página?

Se mesmo assim o desempenho da consulta não for satisfatório postae que a gente move seu tópico pra galera de SQL Server te dar uma ajuda.

 

OK..!!?? T+... http://forum.imasters.com.br/public/style_emoticons/default/closedeyes.gif

 

PS: Uma páginação em ASP requer o mesmo desempenho de uma consulta direta.

Compartilhar este post


Link para o post
Compartilhar em outros sites

mais na minha opnião o que está lento não é o sql, e sim o servidor....sql foi criado justamente para nao ter problema de desempenho em consultas pesadas....

Compartilhar este post


Link para o post
Compartilhar em outros sites

Dolci, Mas há necessidade e exibição de todos esses registros em tela?Verique melhor pois pode ser desnecessários..Abraços

Não é necessário não, tenho uma paginação de 30 em 30, mas acho que o sistema está carregando tudo pra depois paginar. Não tenho índice, faço ele no próprio SQL?Grato

Compartilhar este post


Link para o post
Compartilhar em outros sites

não seria o caso de uma stored procedure?

aí é que tá o problema, não sei fazer uma procedure, pode me orientar?

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.