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

Fechar Conexao Do Db


Guest Bertolani

Pergunta

Guest Bertolani

E ai pessoal tudo bom?

Estou com o seguinte problema. Fiz um SELECT num banco Access usando o proprio Access e mandei salvar como uma página .ASP (ARQUIVO/SALVA como HTML) ele gera uma página dinâmica.

Pois bem como nem tudo é perfeito ele abre a conexao com o banco, mas não fecha e quando tento fechar ele da uma mensagem de erro dizendo que ele não pode fechar um obejto que esta aberto..

alguém pode me ajudar

Segue o codigo abaixo:

Obs: O fechamento da conexao esta no final do codigo

Desde já obrigado,

Flavio

<%

Dim DataAbertura

DataAbertura = Date()

If Session("Controle")="" Then 'Controle de registro no banco de dados, se a Session estiver vazia cria uma.

session("Controle") = Session("Login") & year(now) & month(now) & day (now) & hour(now) & minute(now) & second(now)

End If

%>

<html>

<head>

<title>Ticket</title>

</head>

<%

If IsObject(Session("TK_conn")) Then 'Verifica se existe uma conexão ao bd aberta

Set conn = Session("TK_conn")

Else

Set conn = Server.CreateObject("ADODB.Connection") 'Se não tiver cria uma

conn.open "Ticket","",""

Set Session("TK_conn") = conn

End If

If IsObject(Session("Intrax_conn")) Then 'Verifica se existe uma conexão ao bd IntraX

Set conn_ix = Session("Intrax_conn")

Else

Set conn_ix = Server.CreateObject("ADODB.Connection") 'Se não tiver cria uma

conn_ix.open "IntraX","",""

Set Session("Intrax_conn") = conn_ix

End If

sql = "SELECT TK_ASSUNTO.TK_ASSUNTO_ID, TK_ASSUNTO.TK_ASSUNTO_NM FROM TK_ASSUNTO WHERE (((TK_ASSUNTO.TK_VALIDO_FL)=Yes)) order by TK_ASSUNTO.TK_ASSUNTO_NM "

Set rs_tk = Server.CreateObject("ADODB.Recordset")

rs_tk.Open sql, conn, 3, 3

sql = "SELECT ix01usuario.ix01_cha_nome, ix01usuario.ix01_cha_descr, ix01usuario.ix01_cha_email FROM ix01usuario "

sql = sql & " where ix01usuario.ix01_cha_nome not in ('PUBLICO','MASTER') ORDER BY ix01usuario.ix01_cha_nome "

Set rs_ix = Server.CreateObject("ADODB.Recordset")

rs_ix.Open sql, conn_ix, 3, 3

%>

<body bgcolor="FFFFFF">

<h3 align="center"><font color="red">Abertura de Chamado T&eacute;cnico</font></h3>

<a href="Index.asp">NOVO REGISTRO</a>

<form name="form1" method="post" action="HelpDesk.asp">

<table boder="0" bgcolor="skyblue" cellspacing="0" cellpadding="0">

<tr>

<td>Usuário conectado</td>

<td><%= Session("Login")%></td>

<td><% =Day(DataAbertura) %>/<% =Month(DataAbertura) %>/<% =Year(DataAbertura) %></td>

</tr>

<tr>

<td>Usuário com problema:</td>

<td><select name="txtNome">

<option values=""> </option>

<%

'On Error Resume Next

rs_ix.MoveFirst

do while Not rs_ix.eof

%> <!-- Busca os nomes dos usuários no banco do IntraX -->

<option values='<%=Server.HTMLEncode(rs_ix.Fields("ix01_cha_nome").Value)%>'><%=Server.HTMLEncode(rs_ix.Fields("ix01_cha_nome").Value)%></option>

<%

rs_ix.MoveNext

loop

%>

</td>

</tr>

<tr>

<td>Assunto:</td>

<td><select name="slcAssunto">

<option values=""></option>

<%

'On Error Resume Next

rs_tk.MoveFirst

do while Not rs_tk.eof

%> <!-- Busca o Assunto, tipo de problema, no banco de dados -->

<option values='<%=Server.HTMLEncode(rs_tk.Fields("TK_ASSUNTO_ID").Value)%>'><%=Server.HTMLEncode(rs_tk.Fields("TK_ASSUNTO_NM").Value)%></option>

<%

rs_tk.MoveNext

loop%>

</td>

</tr>

<tr>

<td>Descri&ccedil;&atilde;o do Problema:</td>

<td><textarea name="txtDescricao" rows="5" cols="40" maxlength="255"></textarea></td>

</tr>

</table>

<p>

Tipo de m&aacute;quina:<input type="radio" name="radMaquina" value="Desktop" CHECKED>Desktop

<input type="radio" name="radMaquina" value="Laptop">Laptop

<p>

Prioridade:<input type="radio" name="radPrioridade" value="1">Urgente

<input type="radio" name="radPrioridade" value="2">Alta

<input type="radio" name="radPrioridade" value="3" checked>M&eacute;dia

<input type="radio" name="radPrioridade" value="4">Baixa<br><br>

<center><input type="submit" name="Enviar" value="ENVIAR">

<input type="reset" name="reset" value="LIMPAR"></center>

</form>

<%

'conn.close

'conn_ix.close

'rs_tk.close

'rs_ix.close

'conn = nothing

'conn_ix = nothing

'rs_tk = nothing

'rs_ix = nothing

%>

</body>

</html>

Link para o comentário
Compartilhar em outros sites

2 respostass a esta questão

Posts Recomendados

  • 0

Kade a string de conexão

Verifiquei estas linhas e não a detectei:

If IsObject(Session("Intrax_conn")) Then 'Verifica se existe uma conexão ao bd IntraX

Set conn_ix = Session("Intrax_conn")

Else

Set conn_ix = Server.CreateObject("ADODB.Connection") 'Se não tiver cria uma

conn_ix.open "IntraX","",""

Set Session("Intrax_conn") = conn_ix

End If

Geralmente eu faço assim:

Antes de mais nada eu crio um Global.asa que fica no raiz do site, ai vai a estrutura desse aqruivo:

<script LANGUAGE=VBScript RUNAT=Server>

Sub Application_OnStart

Application.Lock

Session.Timeout = 1

server.scripttimeout = 10

Application("Stringconexao")= "DBQ=C:\Inetpub\wwwroot\TABELAS\PORTALFISCAL.MDB; DRIVER={Microsoft Access Driver (*.mdb)}"

Application.Unlock

End Sub

</SCRIPT>

Depois, faço:

<%

Dim conexao, oConn, oRS, strSQL, strConn, Nome

' oConn = objeto conexão

' oRS = object RecorSet

' strConn = string the conexão

' strSQL = Instrução SQL

Set conexao = Server.CreateObject("ADODB.Connection")

conexao.Open Application("Stringconexao") >>>>>> aquia string de conexão, cadê a tua ???

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

strSQL = "SELECT * FROM PFDBUSERS U WHERE PFLOGIN ='"& Request.Form("login") & "' AND PFSENHA='" & Request.Form("senha") & "'"

oRS.Open strSQL, conexao

' ..........

' teu código..........

oRS.Close ==> Fecho a conexão com a tabela !!!!

Set oRS = Nothing ===>Destruo as instâncias

Set conexao = Nothing

%>

Espero ter ajudado !!! B)

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,3k
    • Posts
      652,5k
×
×
  • Criar Novo...