Ir para conteúdo

POWERED BY:

Arquivado

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

*Marcinha*

Matrizes

Recommended Posts

Oi pessoal, tem uma maneira legal e simples de se trabalhar com recordset;

 

Vejam a seguinte instrução:

 

==========================================

strSQL = "Select nome, cidade, endereco from clientes"

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

rs.Open strSQL, Conexao, 0, 3

 

If not rs.EOF then

matriz = rsProposta.GetRows

End If

 

rs.close

conexao.close

 

==========================================

'Notem que o recordset não precisará ser utilizado novamente.

 

a variavel matriz recebe os dados do recordset rs.

 

Para mostrar os dados é mais simples ainda:

 

==========================================

'0 = nome

'1 = cidade

'2 = endereço

 

If IsArray(matriz) then

 

For i = 0 to Ubound(matriz,2) 'o i vai de zero até a última posição da matriz.

response.write matriz(0,i) & " - " 'Ele mostra o nome

response.write matriz(1,i) & " - " 'Ele mostra a cidade

response.write matriz(2,i) & " - " 'Ele mostra o endereço

Next

 

End If

 

==========================================

 

Por exemplo, o endereço está na coluna 2. A linha é variável, onde está definido por i.

 

A vantagem, é que eu não preciso utilizar o recordset para percorrer os dados da tabela...

Compartilhar este post


Link para o post
Compartilhar em outros sites

faz uma paginação com isso agora ???

Gastao eu pensei em faezr um paginação usando array basicamente o getRows que aprendi ontem se consgeui faezr apaginação do jeioq ue quero poderei utilizar em access mysql ou sql server abraçosAi eu libero pro pessal

Compartilhar este post


Link para o post
Compartilhar em outros sites

faz uma paginação com isso agora ???

Gastao eu pensei em faezr um paginação usando array basicamente o getRows que aprendi ontem se consgeui faezr apaginação do jeioq ue quero poderei utilizar em access mysql ou sql server abraçosAi eu libero pro pessal
bom garoto.....huahuahuahua...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Fiz isso uma vez:

 

<!--#include file="conexaoNwind.inc" --><!--#include file="adcvbs.inc" --><html><head><title>Paginação - GetRows - Ursolouco</title><meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"><style type="text/css"><!--body {font-family: Verdana;font-size: 10px;color: #000000;}a {text-decoration: none;}a:link {color: #000099;}a:visited {color: #330099;}a:hover {text-decoration: underline;}--></style></head><body><p> <%Inicio = Request.QueryString("Inicio")Final = Request.QueryString("Final")Quantidade = Request.QueryString("Quantidade")If Not isNumeric(Inicio) or Len(Inicio)=0 Then Inicio = 0Else Inicio = CInt(Request.QueryString("Inicio"))End IfIf Not isNumeric(Final) or Len(Final)=0 Then Final = 0Else Final = CInt(Request.QueryString("Final"))End IfIf Not isNumeric(Quantidade) or Len(Quantidade)=0 Then Quantidade = 5Else Quantidade = QuantidadeEnd IfIf Not isArray(ArrRs) Then Set Rs = Server.CreateObject("Adodb.recordset") strSQL = "SELECT * FROM Customers;" Set Rs = Conn.Execute(strSQL) ArrRs = Rs.GetRows Rs.Close Set Rs = Nothing Conn.Close Set Conn = NothingEnd If 'ArrRs = Coluna, Linhas na tabela'Onde: Coluna -> Campo da tabela a ser exibido'Linha: Registro a ser percorrido de acordo com o LoopTotalColunas = UBound(ArrRs,1)TotalRegistros = UBound(ArrRs, 2)+1If (TotalRegistros - Quantidade) < (Inicio + Quantidade) Then Quantidade = (TotalRegistros - Inicio)End IfIf Parar > TotalRegistros Then Parar = TotalRegistrosElse Parar = Inicio + QuantidadeEnd IfFor I = Inicio To (Parar-1) For U =  0 To (TotalColunas-6)  Response.Write(ArrRs(U,I) & " " & "-" & " ") Next Response.Write("<br>")Nextresponse.Write("<br>")If Inicio > 1 Then Response.Write("<a href=Pag_GetRows.asp?Inicio=" & (Inicio - Quantidade) & "&" & "Final=" & Parar - Quantidade & "&" & "Quantidade=" & Quantidade & ">") response.Write("<<<<-- VOLTAR") Response.Write("</a>")End If Response.Write(" " & "<b>" & "|" & "</b>" & " ") If parar < TotalRegistros Then Response.Write("<a href=Pag_GetRows.asp?Inicio=" & Inicio + Quantidade & "&" & "Final=" & Parar + Quantidade & "&" & "Quantidade=" & Quantidade & ">") Response.Write(" AVANÇAR -->>>>") Response.Write("</a>")End If%></p></body></html>

Não sei se serve de exemplo... :mellow:

Compartilhar este post


Link para o post
Compartilhar em outros sites

eu faço paginação assim (vou só colocar o q importa):

 

<%If Request.QueryString("p") <= 0 OR Request.QueryString("p") = "" Then	p = 1Else	p = Request.QueryString("p")End Ifpp = p + 1  'Numera a proxima paginapa = p - 1  'Numera a pagina anterior%>html por aki<%regMax = 10 'Definimos aqui o número máximo de registros por páginay = regMaxdb=Server.MapPath("guest/guest.mdb")Set con = Server.CreateObject("ADODB.Connection") Set rs = Server.CreateObject("ADODB.Recordset")con.Open "DRIVER={Microsoft Access Driver (*.mdb)};DBQ=" & db & ";"sql = "SELECT horario, nick, medidas, banda, sexo, msg FROM guest"rs.Open sql, con, 3, 3rs.MoveLast'esta parte que vem a seguir é o fundamental da paginação.... quem manja de matemática um poco vai entenderz = (p-1)*yIf not z < 10 Then 'Define a localizacao do ponteiro do Recordset na tabela	While not z = 0  rs.MovePrevious  If rs.BOF Then  	response.Write("<center><p><font color=#00FFFF><b>Não existem mais mensagens</p></font></b></center><br>")   	z = 1  End If  z = z - 1	WendEnd IfDo until rs.BOF OR y = 0%>              <%For each i in RS(i) 'tirei o meu html e colokei esse loopzinho, nao sei se vai funcionar!!! heheeresponse.write rs(i) & "<br>"Next"<br><br>"%><% rs.MovePrevious	y = y - 1LoopIf rs.BOF Then	BOF = 1End If%>          <% If p = 1 Then %>        </div>        <p align="center"><a href="<%=Request.ServerVariables("SCRIPT_NAME")%>?p=<%=pp%>"><strong>Próxima</strong></a></p>        <div align="center">          <% Elseif BOF = 1 Then %>        </div>        <p align="center"><a href="<%=Request.ServerVariables("SCRIPT_NAME")%>?p=<%=pa%>"><strong>Anterior</strong></a>           <% Else %>        <p align="center"><a href="<%=Request.ServerVariables("SCRIPT_NAME")%>?p=<%=pa%>"><strong>Anterior</strong></a><strong>           - <a href="<%=Request.ServerVariables("SCRIPT_NAME")%>?p=<%=pp%>">Próxima</a></strong></p>        <div align="center">           <p>             <% End If %>            <br>            <%con.closeSet con = nothingSet rs = nothing%>

me deu mta dor de cabeça fazer isso!!! levei umas 3 semanas !!! aaahhhh

mas consegui !!! hehe... tenho q aprender a paginação usando PageSize e etc, pq ateh hj nao consegui, hauhauehueahuea

 

[]´s

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.