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

Fechando Conexao!


dlumeida

Pergunta

Fiz um sisteminha e funciona blzinha, so que como não fechei as conexões o servidor mais cedo ou mais tarde da pau!! ai eu crie

Sub fecha()

reg.close

set reg = nothing

conexao.close

set conexao = nothing

end sub

Só que ao executar essas linha de código me retorna um erro

código

sql="insert into login (nome) values ('" & vnome & "')"

set reg=conexao.execute(sql)

fecha

Erro:

Tipo de erro:

ADODB.Recordset (0x800A0E78)

Operação não permitida quando o objeto está fechado.

/blog/conect.asp, line 8

Quando e como eu tenho q fechar minha conexão? e quando e como devo fechar um objeto record set??

Link para o comentário
Compartilhar em outros sites

7 respostass a esta questão

Posts Recomendados

  • 0

bem, você tem certeza q não fechou nada antes de alguma chamada pro banco?

Link para o comentário
Compartilhar em outros sites

  • 0

brother

você só pode fechar a conexao após ter executado todo o seu codigo

pois, pelo que eu vi, você faz o SELECT, executa ele, e fecha a conexao, né

então.. pra que você faz o select?

Deve ser pra mostrar os dados, certo?

Mas, se você fechar a conexao antes de mostrar os dados, é claro que vai dar erro!

Coloque o codigo que fecha a conexao após todas as operações que usam o banco de dados, e o SQL.

Abraços

Link para o comentário
Compartilhar em outros sites

  • 0

Dark não fiz não foi Select não foi Insert!!!

sql="insert into login (nome) values ('" & vnome & "')"

set reg=conexao.execute(sql)

fecha

essa e uma pagina salva.asp

e quando a instrução slq (insert) e executada eu fecho!! pois não irei presisar dela novamente!!!

Link para o comentário
Compartilhar em outros sites

  • 0
Guest [ GuTo ] na faculdade

faça assim:

conexao.Execute("insert into login (nome) values ('" & vnome & "')")
fecha()

não precisa setar um recordset para os métodos: insert, update e delete. só no SELECT, pois ele é o único q armazena dados do bd.

LEMBRE-SE DISSO!

E se você fecha a conexao com bd depois de tudo, depois de ter verificado tudo q keria no bd, então nem sei cara.

Posta seu código todo então pra "nóis" ver biggrin.gif

aguardamos!

abraços,

t+

Link para o comentário
Compartilhar em outros sites

  • 0

Valeu cara isso eu não sabia, valeu pela dica!!! vo postar o codigo todo!!!

<%@LANGUAGE="VBSCRIPT"%>
<%if session("login")="" then
response.Redirect("restrito.asp")
end if%>
<!--#include file="conect.asp"-->
<!--#include file="convdata.asp"-->
<%
stat=request.QueryString("stat")
if stat=1 then
if request.Form("post")="" then
response.Write("Preencha o campo post!")
else
vautor=session("nome")
vpost=request.Form("post")
sql="insert into post (autor, data, hora, post) values ('" & vautor & "','" & dt & "','" & tempo & "','" & vpost & "')"
set reg=conexao.execute(sql)
response.Redirect("view.asp")
end if
end if

if stat=2 then
vnome=request.Form("nome")
vemail=request.Form("email")
if request.Form("icq")="" then
vicq="N/A"
else
vicq=Request.Form("icq")
end if
vstatus=request.Form("stat")
vusuario=request.Form("usuario")
vsenha=request.Form("senha")
if request.Form("foto")="" then
vfoto="sf.jpg"
else
vfoto=request.Form("foto")
end if
sql="insert into login (nome, email, icq, admin, usuario, senha, foto) values ('" & vnome & "','" & vemail & "','" & vicq & "','" & vstatus & "','" & vusuario & "','" & vsenha & "','" & vfoto & "')"
set reg=conexao.execute(sql)
response.Redirect("usuarios.asp")
end if

if stat=3 then
id=request.QueryString("id_post")
if not request.Form("nome")="" and not request.Form("comentario")="" then
vnome=request.Form("nome")
vcoment=request.Form("comentario")
vemail=request.Form("email")
vsite=request.Form("site")
sql="insert into comentarios (id_post, nome, email, site, data, hora, comentario) values ('" & id & "','" & vnome & "','" & vemail & "','" & vsite & "','" & dt & "','" & tempo & "','" & vcoment & "')"
set reg=conexao.execute(sql)
response.Redirect("view.asp")
else
response.Write("digite um nome e um comentario valido")
end if
end if
%>

<!--#include file="conect.asp"--> Conexao com o bd

<!--#include file="convdata.asp"--> Somente tratamento de data

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,8k
×
×
  • Criar Novo...