Ir para conteúdo

POWERED BY:

Arquivado

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

Célio-Ctba

Mais uma vez ADODB.Field error '80020009'

Recommended Posts

Fala Galera!!!

 

Estou fazendo uma página muito simples, a consulta está fazendo normal, dentro da consulta tem um link pra fazer alterações no ítem selecionado na pesquisa.

Após fazer a consulta, clico neste link que deveria trazer os campos pra fazer a alteração, mas o que dá é o erro: ADODB.Field error '80020009'

 

Either BOF or EOF is True, or the current record has been deleted. Requested operation requires a current record.

 

/teste/altera_servico.asp, line 0

ASP [/tr][tr]<body>

 

<!-- #include file="conecta.asp" -->

<%

 

If IsEmpty( Request.Form("submit") ) Then

ComandoSQL = "SELECT * FROM servicos where desc_serv = '" & request.querystring("desc_serv") &"'"

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

table.Open ComandoSQL, conexao

 

 

 

%>

 

 

 

<form method=POST action="altera_servico.asp">

<!--Código: <input type=text name="cod_serv" value="<%=table("cod_serv")%>" size=50 maxlength=50></br>-->

Descrição: <input type=text name="desc_serv" value="<%=table("desc_serv")%>" size=10 maxlength=10></br>

Valor: <input type=text name="preco_serv" value="<%=table("preco_serv")%>" size=50 maxlength=50></br></br>

<input type=submit name=submit value=Alterar>

</form>

<%

table.close

Set table = Nothing

conexao.close

Set Conexao = Nothing

 

else

%>

 

 

 

<%

 

If Not IsEmpty(Request.Form("submit")) AND Trim(Request.Form("desc_serv")) <> "" AND Trim(Request.Form("preco_serv")) <> "" Then

 

 

 

 

set table = Server.CreateObject("ADODB.RecordSet")

 

 

sql = "select * from servicos where desc_serv = '" & Request.FORM("desc_serv") &"'"

table.open sql, conexao , 3, 3, 1

'response.write sql

table("desc_serv") = Request.FORM("desc_serv")

table("preco_serv") = Request.FORM("preco_serv")

 

table.update

 

table.close

set table = nothing

conexao.close

Set Conexao = Nothing

 

 

%>

 

 

 

<font face="Arial" size="2">

<center><br>Os dados foram enviados com sucesso!

 

<br><a href="consulta_cliente.asp"><b>Clique aqui</b></a> para continuar</font></center>

 

<%

Else

%>

 

<font face="Arial" size="2">

<center><br>Atenção: Alguns dados necessário não foram preenchidos corretamente

<br><a href="java script:history.go(-1)"><b>Clique aqui</b></a> para voltar</font></center>

 

 

<%

End If

End if

%>

 

 

 

</body>

[/tr]

 

Creio q não seja mto complicado, pois tenho outro arquivo q altera clientes q está funcionando, já comparei os dois e está identico, fora o nome dos campos é lógico, mas esse não vai de jeito nenhum, 3º dia sem sucesso.

 

Abraços!!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

sempre q fizer um SELECT.... antes de mandar exibir algum registro, você tem q fazer a verificação se retornou registro o SELECT

 

if NOT rs.EOF then.....encontrou registros....... coloquei os comandos para exibir os registroselse.... não encontrou registros..end if

Compartilhar este post


Link para o post
Compartilhar em outros sites

coloca no local onde você tenta pegar os valores do banco...If NOT RS.EOF THENvalor = RS("valor")END IF

Compartilhar este post


Link para o post
Compartilhar em outros sites

Maravilha, agora entendi o recado, funcionou beleza. Mas o q não entendo é pq parou de encontrar os valores, o banco tem diversos valores, até pouco tempo atrás estava funcionando, eu só alterei layout na página e sem mais nem menos parou de funcionar.Ele consulta normalmente mas na hora de trazer os valores p/ serem alterados, não consegue encontrar :blink: xD

Compartilhar este post


Link para o post
Compartilhar em outros sites

Op´s, acabei de encontrar todo o erro.

Está no 1º SELECT lá no comecinho do código

ASP [/tr][tr]ComandoSQL = "SELECT * FROM servicos where desc_serv = '" & request.querystring("cod") &"'"[/tr]

 

Vejam que antes o querystring estava buscando "desc_serv" no entanto ele tem o nome de "cod" no arquivo de consulta, por isso não encontrava os registros.

 

Valeu as dicas assim mesmo, aprendi a colocar aquele if ali, se acaso não tiver nada no banco já não vai dar erro, "excelente".

 

Mto. Obrigado, abraço a todos!!!

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.