Ir para conteúdo

POWERED BY:

Arquivado

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

soulforjah

asp com mysql

Recommended Posts

Bom pessoal,

 

to fazendo um sistema em asp com mysql, consegui utilizar o insert numa boa, mas

to tendo dificuldade em usar select com mysql...

 

erro que retorna:

"ADODB.Recordset (0x800A0E78)

Operation is not allowed when the object is closed."

 

o que pode estar acontecendo? o comando é o mesmo de como se estivesse usando o Access ou muda alguma coisa?

Compartilhar este post


Link para o post
Compartilhar em outros sites

acho que não... vou postar o codigo

 

Dim conexao, rs, sql

'Cria um Objeto do tipo connection
	Set conexao = Server.CreateObject("adodb.connection")
	set rs = Server.CreateObject("adodb.recordset")
	rs.cursortype = 3


'Informa a string do banco
conexao.connectionString="DRIVER={MySQL ODBC 3.51 Driver};SERVER=localhost;PORT=3306;DATABASE=ocorrencias; USER=root;PASSWORD=;pwd=;Option=3;"



conexao.execute "SELECT * FROM ocorrencia o;"

 

depois disto o tem a codigo setando a consulta no codigo html tipo

 

<%=rs("data")%>

 

ao fim fecho conexão e destruo o obj...

 

será q tá errado?

Compartilhar este post


Link para o post
Compartilhar em outros sites

bom, o erro mudou...

 

Error Type:

Microsoft VBScript compilation (0x800A0401)

Expected end of statement

/ocorrencias/include/config.inc, line 17, column 25

 

 

onde config.inc está o código de conexão anexado acima...

Compartilhar este post


Link para o post
Compartilhar em outros sites

mas é a mesma linha da conexao que ta o erro?

Compartilhar este post


Link para o post
Compartilhar em outros sites

como esta o codigo depois das mudanças e qual a linha e a descrição do erro?

Compartilhar este post


Link para o post
Compartilhar em outros sites

ai vai...

 

default.asp

<!-- #include file="include/config.inc" -->


<html>
<head>
<meta http-equiv="Content-Language" content="pt-br">
<link rel="stylesheet" type="text/css" href="include/css/stilo.css"> 
<title><!-- #include file="include/head.htm" --></title>
</head>
<body bgcolor="#fffff" marginwidth="0" marginheight="0" leftmargin="0" rightmargin="0" topmargin="0">

<!-- #include file="include/topo.htm" --><center>


<br><br><br>

<table border="0" cellpadding="0" cellspacing="3" width="700">
<% do while not rs.EOF %>
<tr>
	<td width="100%" height="1" class="texto_consulta">
ID: <%rs=("id")%> | 

Usuário: <font class="texto_dados"><b><%rs=Ucase("nome")%></b></font> | 

Plataforma: <font class="texto_dados"><b><%rs=("plataforma")%></b></font> | 

Data: <font class="texto_dados"><b><%=rs("data")%></b></font>| 
</td></tr>
<%
rs.movenext
loop
%>
</table>
</body>
</html>

<%
conexao.Close
Set conexao= Nothing
rs.Closer
Set rs= Nothing
%>

config.inc

<%
Dim conexao, rs, sql

	Set conexao = Server.CreateObject("adodb.connection")

conexao.connectionString="DRIVER={MySQL ODBC 3.51 Driver};SERVER=localhost;PORT=3306;DATABASE=ocorrencias; USER=root;PASSWORD=;pwd=;Option=3;"


Set RS = conexao.execute "SELECT * FROM ocorrencia"

%>

 

a descrição do erro se dá para a linha de execução do comando sql...

 

Error Type:

Microsoft VBScript compilation (0x800A0401)

Expected end of statement

/ocorrencias/include/config.inc, line 16, column 25

Compartilhar este post


Link para o post
Compartilhar em outros sites

Cara,

 

Eu uso a mesma conexão que você:

 

<%
Set conexao = Server.CreateObject("ADODB.CONNECTION")
strcon = "Driver={MySQL ODBC 3.51 Driver};Server=servidor;Port=3306;Database=nome_do_banco;User=usuario;Password=s
nha;Option=3;"
%>

A princípio parece que está faltando abrir a conexão:

 

<%
conexao.Open strcon

'Ai aqui você faz a SQL normalmente, a maneira que você fez está certa.

Set RS = conexao.execute "SELECT * FROM ocorrencia"
%>

Tenta dessa maneira e conta o que acontece.

 

 

Michael C.

Compartilhar este post


Link para o post
Compartilhar em outros sites

não consegui não... agora, talvez ajude... a linha que ele acusa erro é exata mente citada a seguir:

 

Set RS = conexao.execute "SELECT * FROM ocorrencia"

 

e a coluna é exatamente anterior do primeira aspas antes do comando select... q isso pode significar?

 

 

outra coisa Michael C., sabe me explicar o que é esse "strcon" após o "execute.open"?

 

 

 

 

outra coisa... sabe o que é engraçado... que isso acontece só com o select... to usando o insert numa boa...

vejam:

 

 

<%
Dim conexao,nome,plataforma,data,hora,ocorrencia,idhistorico,importancia

nome = request.form("txt_nome")
plataforma = request.form("txt_plataforma")
dia = request.form("txt_data")
hora = request.form("txt_hora")
ocorrencia = request.form("txt_ocorrencia")
idhistorico = request.form("txt_idhistorico")
importancia = request.form("txt_importancia")


'Cria um Objeto do tipo connection
	Set conexao = Server.CreateObject("adodb.connection")


'Informa a string do banco
conexao.connectionString="DRIVER={MySQL ODBC 3.51 Driver};SERVER=localhost;PORT=3306;DATABASE=ocorrencias; USER=root;PASSWORD=;pwd=;Option=3;"

conexao.open

conexao.execute "INSERT INTO ocorrencia (nome,plataforma,dia,hora,ocorrencia,idhistorico,importancia) VALUES ('"&nome&"','"&plataforma&"','"&dia&"','"&hora&"','"&ocorrencia&"','"&idhistorico&"','"&importancia&"');"



conexao.Close
Set conexao= Nothing


Response.Redirect "../ocorrencia.asp?resultado="&consMsgSucess
%>

Compartilhar este post


Link para o post
Compartilhar em outros sites

jonathandj, deu certo... era isso mesmo... simples simples....

desculpa prender o tempo de vcs

 

 

obrigado pela atenção..

ate mais ver

Compartilhar este post


Link para o post
Compartilhar em outros sites

poxa e eu ñ reparei isso hauhauhauha, a galera ia ficar um tempo grande aqui!!!! heuheheu

 

parabéns pelo detalhe consertado!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Detalhe bobo mas muito importante

 

Bem observado Jonh

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.