Ir para conteúdo
Fórum Script Brasil
  • 0

É Correto?


mkboy

Pergunta

5 respostass a esta questão

Posts Recomendados

  • 0

Opa... desculpe ae, mas de certa forma não!

O correto, SEMPRE, é fazer assim:

Vou comentando no código...

'Feche os objetos
rs.Close
conexao.Close
'Destrua os objetos
set rs = nothing
set conexao = nothing
Não se pode fechar algo que já está destruído, pense assim, portanto faz-se deste modo que mostrei. Ah, uma dica pra quem ler isso: Quando você cria uma página asp que vai ter de mostrar dados de diversas tabela, como numa página principal (home page), é bom setar o objeto do recorset, abri-lo e mostrar os dados deste, fecha-lo e depois para os outros dados a serem, outro recordset, não é preciso setar o um novo recordset, é só abrilo novamente. Depois q não for mais usa-lo, destrua o objeto. Ex.:
set rs = server.createobject("adodb.recordset")
rs.open ("select * from membros"),conexao,1,1
if not rs.eof then
  'mostre os dados aki
end if
'deu, já o usou, agora feche-o
rs.Close

'mostre outros partes da pagina, etc etc etc..

'agora você vai pegar novos dados do bd, usando o mesmo objeto
'sem precisar criar outro
rs.Open ("select top 1 * from membros where participacao > 100"),conexao,1,1
if not rs.eof then
  'mostra os dados
end if
'fechamos já o recordset
rs.Close
'E podemos seguir este passo pra todos os demais recordsets na paginas.
'Realçando que em determinados sistemas isso possa não ser viável.

'Depois de ter exibido todos os dados q queria, e fechado o objeto na ultima vez em que se usou-o, podemos destrui-lo então.
set rs = nothing

É interessante pensar desta forma.

Depois algo mais avançado, usando matrizer/vetores/arrays, o que seja.

Bom proveito! biggrin.gif

Link para o comentário
Compartilhar em outros sites

  • 0
Tipo, se for Record set diferente, tipo: rs1, rs2, rs2...

Tenho que destrui-lo antres de abrir o outro, e se for tudo rs1 eu destruo só no final quando não for usar mais, é isso?

Sim... Sempre quando você for abrir outro recordset... antes de abrir você tem que fechar o outro... se não da erro no servidor.... e sempre é bom liberar memórias também:

set recordset = nothing

[]'s

Victor

Link para o comentário
Compartilhar em outros sites

  • 0
Tipo, se for Record set diferente, tipo: rs1, rs2, rs2...

Tenho que destrui-lo antres de abrir o outro, e se for tudo rs1 eu destruo só no final quando não for usar mais, é isso?

Se for diferente não precisa, mas é recomendável, pois você já fecha o recordset do bd e deixa mais rápida sua apliacação e também libera espaço na memória.

É só ler bem direitinho meu post acima, fica tudo bem claro!!! biggrin.gif

Link para o comentário
Compartilhar em outros sites

  • 0
Tipo, se for Record set diferente, tipo: rs1, rs2, rs2...

Tenho que destrui-lo antres de abrir o outro, e se for tudo rs1 eu destruo só no final quando não for usar mais, é isso?

tipo você faz um select e não vai usalo mais.....então depois de pegar ests dados você destroi ele.....já que não vai mais ser usado..............seguindo a mesma linha de racinio você vai colocando um monte de selects e outros......

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,7k
×
×
  • Criar Novo...