Jump to content
Fórum Script Brasil
  • 0
Sign in to follow this  
Otto_Von_Blah

Função Ubound

Question

Tenho acompanhado tópicos a respeito de GetRows e acabei ficando com uma dúvida na hora de exibir os dados capturados de um bd.

Tenho uma coisa mais ou menos simples sobre a função Ubound.

Considerando a consulta SQL assim:

strSQL = "SELECT id,data,manchete FROM noticias"

Repassa-se os dados do recordset pra um array de nome matriz.

Q valor de z no UBound abaixo eu tenho q usar para esse array criado?

Ubound(matriz,z)

O array criado tem 3 linhas, mas o Ubound retorna exatamente o q? O valor do maior índice de linha, ou seja, da última linha (e q nesse caso seria 2)?

E q valor de z tenho q usar pra q o For percorra todos os dados da matriz? Esse valor q está me confundino um pouco...

Agradeço desde já a atenção de todos...

Share this post


Link to post
Share on other sites

2 answers to this question

Recommended Posts

  • 0

Ai velho!

Boa coisa essa de usar o getrows e abandonar os recordsets!

Acho que há vasto material sobre o asssunto tanto na web como aqui no fórum , mas ai vai a explicação:

O "z" indiica qual a dimensão do vetor te interessa. No teu caso tua matriz terá uma dimensão se houver apenas um registro retornado na sql, ou terá 2 dimensões se houverem vários registroos. A primeira dimensão será iigual a 2, pois requeres 3 campos na sql e o primeiro é sempre zero. Dai que, quando usares z=1 o unbound, no seu caso retornará o valor 2.

Mas se usares z=2, pedirás a segunda dimensão do vetor, que é o número de registros retornados pela sql (´começando do 0 ao invés do 1, é claro).

Ou seja

strSQL = "SELECT id,data,manchete FROM noticias"

Ubound(matriz,1) = 2

Ubound(matriz,2) = numero de registros retornados pela sql - 1

Para circulares através de todos os recorsets use:

For i = 0 to Ubound(matriz,2)

matriz(0,i) = id do registro i

matriz(1,i) = data do registro i

matriz(2,i) = manchete do registro i

Next

Eu utilizo uma subrotina que abre a coonexão, faz um getrows para uma matriz pagrão e depois fexa a conexão e já calcula oubound da 2a dimensão para o for-next.

Espero ter ajudado!

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this  



  • Forum Statistics

    • Total Topics
      148104
    • Total Posts
      643373
×
×
  • Create New...