Sign in to follow this  
py2tz

Problemas Com Order By

Recommended Posts

Pois é, uma coisa que não estou entendendo,

No BD existem diversas colunas, hoje esta com o sort por nomes e quando eu mudo o sort para uma coluna que possui numeros o sistema até para e fica uns 5 minutos para aparecer algo e quando aparece vem tudo atrapalhado.

Veja so os dados da coluna Nome:

order by Nome ASC

ABC Northern Territory

KCBS Pyongyang

Radio Educadora

Todas veem rápido e na ordem crescente conforme o pedido.

Porem quando eu altero o script e peço um outro campo com numeros não vem nada e a pagina fica lerda a bessa, e parece até que dá pau no servidor ou na minha maquina. O engraçado é que seu peço pra fazer com a ID fica legal tambem e são numeros do mesmo jeito.

order by 19mts ASC

2310

2325

2350

2380

2390

2390

2410

2460

2460,5

2470

2485

2500

2625

2850

O campo acima esta com tipo numero e formato simples.

alguém teria uma explicação pra saber onde esta o problema?

Obrigado

Fausto

Share this post


Link to post
Share on other sites

com certeza está na orma que você montou seu loop, se for usando coisa doida como:

somente um set e logo depois seu loop ai a coisa fica preta para você...use todos os itens que um loop tem que ter em sua conexão tipo:

Const page_tamanho = 15

atual_page = 1

Set Objetivo = Server.CreateObject("ADODB.RecordSet")

Objetivo.PageSize = page_tamanho

Objetivo.CacheSize = page_tamanho

Objetivo.CursorLocation = 3

Objetivo.Open sql, DB_conexao

registro = Objetivo.RecordCount

paginas = Objetivo.PageCount

<%

If Registro = 0 Then

%>

dados que não foi encontrado nada

<%

Else

Objetivo.AbsolutePage = atual_page

Do While not Objetivo.EOF And Objetivo.AbsolutePage = atual_page

END If

%>

dados do loop

<%

Objetivo.MoveNext

Loop

%>

este ai foi um exemplo de uso correto da coisa, porem podemos fazer de acordo com nossa vontade, mas está regra é real, se burlar a coisa pode se complicar ou funcionar incoretamente.

espero ter ajudado, mas pelo que você disse é caso de loop sim, está muito lento ele e mau definido ai acontece isto é batata isto, ai se você re-formular o seu loop ele vai pedir tudo direitinho.

espero ter ajudado.

Share this post


Link to post
Share on other sites

Pois é, no script nem loop tem, somente next, veja como esta a parte que citou.

<table width=98% bordercolor="#a4cdee" border=1 cellpadding="2" cellspacing="0">

<%

x = 0

for x = 1 to rs.pagesize

if rs.eof then

exit for

else

iContador=iContador + 1

Id = rs("Id")

Iota = rs("Iota")

Nome = rs("Nome")

Prefixo = rs("Prefixo")

EndDate = rs("EndDate")

%>

<tr valign=center align=left>

<td<%Response.write RS("19mts")%>&nbsp;</td>

<% rs.MoveNext

if iContador = 1 then

iContador =0

%>

<%

else

%>

<%

end if

end if

next

%>

</tr>

</table>

Share this post


Link to post
Share on other sites

Acho que descobri,

Não sei o motivo, mas quando se coloca números na variável para imprimir na tela, ele não funciona, foi somente alterar para letras que deu certo, ou seja onde estava:

19mts = rs("19mts")

passei para:

Frequencia = rs("Frequencia")

Inclusive na coluna do BD e ai funcionou conforme o pedido. acredito que não se pode usar números, e somente letras.

Obrigado a todos que quebraram a cabeça tentando achar o problema.

Podem fechar este tópico

Share this post


Link to post
Share on other sites
Guest
This topic is now closed to further replies.
Sign in to follow this