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

Erro Maldito...


acortez

Pergunta

Caros,

O erro é o famoso: Operation must use an updateable query.

Tenho dois sites hospedados e no meu provedor tenho uma pasta específica para o BD.

Um site funciona perfeitamente. O outro, eu logo, listo os dados do banco e somente quando vou alterar, inserir ou deletar é que dá zebra. Localmente funciona perfeitamente.

Aí eu pergunto:

- SE FOSSE PROBLEMA DE PERMISSÃO NO SERVIDOR, NÃO ERA PARA DAR ERRO NO SITE 1?

- E NO SITE 2, PORQUE O SELECT FUNCIONA E O UPDATE, DELETE E INSERT NÃO FUNCIONAM?

SITE 1: http://www.alexandrecortez.com/projetofinal

SITE 2: http://www.alexandrecortez.com/cobranca

Ambos os sites são acadêmicos, apenas para testes...

Abs e obrigado

Alexandre

Link para o comentário
Compartilhar em outros sites

7 respostass a esta questão

Posts Recomendados

  • 0

No seu site2, eu entrei nele, mechi nas opções, quando cliquei em ALTERAR, ele abriu uma popup, com o erro:

Microsoft JET Database Engine error '80004005'

Operation must use an updateable query.

/cobranca/manutencao.asp, line 36

O que posso te dizer, é que não tem outra explicação, se não a mesma de sempre..

Esse erro aí é tipico de permissao mesmo..

E fica mais na cara ainda, quando você disse que funciona localmente..

Os bancos de dados dos 2 sites estão na mesma pasta?

PS: Acabei de testar seu primeiro site, e alterei dados de um usuario lá, e não deu erro mesmo..

Por isso a pergunta.. Os dois tão na mesma pasta?

Link para o comentário
Compartilhar em outros sites

  • 0

Sim, os dois BDs estão na mesma pasta.

Não poderia ser algo relacionado ao código da página manutencao.asp (que é mencionada no erro e é a página que deveria abrir no popup)?

Nesta página estão o UPDATE, DELETE E INSERT.

Veja o código inteiro dessa página. Lembrando que o form envia para esta página.

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

<%

'teste para saber se o usuario passou pela tela de login

if Session("Controle") <> "S" then

Response.Redirect "index.asp"

end if

Dim Mensagem

Dim Cursor

Dim SQL

if request("Incluir") = "Incluir" then

'INCLUIR USUÁRIO

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

SQL = "Insert into Cliente (Login, Senha, ConfirmaSenha, Nome, Email, DtNasc, Telefone) " &_

" values ('"& request("Login") &"','"& request("Senha") &"','"& request("ConfirmaSenha") &"','"& request("Nome") &"','"& request("Email") &"','"& request("DtNasc") &"','"& request("Telefone") &"')"

Banco.execute(SQL)

if Err.number = 0 then

Mensagem = "Cadastro de cliente efetuado corretamente."

else

Mensagem = "Falha no cadastro do cliente."

end if

end if

if request("Alterar") = "Alterar" then

'ALTERAR USUÁRIO

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

SQL = "Update Cliente Set Login='"& request("Login") &"', Senha='"& request("Senha") &"', ConfirmaSenha='"& request("ConfirmaSenha") &"', Nome='"& request("Nome") &"', Email='"& request("Email") &"', Telefone='"& request("Telefone") &"', DtNasc='"& request("DtNasc")&"'" &_

" where CodCliente = " & request("CodCliente")

Banco.execute(SQL)

if Err.number = 0 then

Mensagem = "Alteração efetuada com sucesso."

else

Mensagem = "Falha na alteração do cliente."

end if

end if

if request("Deletar") = "Deletar" then

'DELETAR USUÁRIO

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

SQL = "Delete from Cliente where CodCliente = " & request("CodCliente")

Banco.execute(SQL)

if Err.number = 0 then

Mensagem = "Cliente deletado com sucesso."

else

Mensagem = "Falha ao deletar cliente."

end if

end if

%>

<html>

<head>

<title>Sistema de Cobrança</title>

</head>

<body leftmargin="0" topmargin="0" rightmargin="0">

<table width="100%" border="0" cellspacing="0" cellpadding="10" align="center" style="font-family: Verdana; font-size: 11px; color: FFFFFF;">

<tr>

<td height="150" align="center" bgcolor="#008080">

<b><%=Mensagem%></b></td>

</tr>

</table>

</body>

</html>

Link para o comentário
Compartilhar em outros sites

  • 0

cara, enviei o banco de novo e funcionou!!!!!!!!!!

vai entender!!!!!!!!!!

OBS: Deixa eu te mostrar outra coisa, no site 2, note que após alterar alguma coisa, a página com a lista é carregada de novo, mas os dados não se alteram, a menos que você dê F5.

Como posso fazer para a página carregar corretamente?

abs

Link para o comentário
Compartilhar em outros sites

  • 0

que bom que resolveu..

provavelmente o banco tava com algum problema então..

como eu entrei?

assim:

http://scriptbrasil.com.br/forum/index.php...ndpost&p=106059

T+

Link para o comentário
Compartilhar em outros sites

  • 0

Putz, maneira a dica.

Eu coloquei assim antes do IF que checa o login e senha corretos:

Login = Replace(Request.Form("Login"),chr(39),"''")

Senha = Replace(Request.Form("Senha"),chr(39),"''")

É isso???

Se for tem algo errado, pois se eu digitar ' ou o 'OR '1' = '1, continua logando...

abs

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