Jump to content


Photo

Update


  • Faça o login para participar
6 replies to this topic

#1 KAKO-

KAKO-

    loading: again.........

  • Usuários
  • 236 posts
  • Sexo:Não informado
  • Localidade:Joinville
  • Interesses:ASP / PHP

Posted 06/02/2004, 07:53

aew galera eh o seguinte:

tah tando esse erro:

Tipo de erro:
Microsoft OLE DB Provider for ODBC Drivers (0x80040E14)
[Microsoft][Driver ODBC para Microsoft Access] Erro de sintaxe na instrução UPDATE.
/wmonline/adm_atualiza.asp, line 12


essa é a linha 12

set rs = BANCO.execute("update * from cadastro WHERE id ="&Request.QueryString("id")&"(nome,nick,idade,foto,com)values('"&vnome&"','"&vnick&"','"&vidade&"','"&vfoto&"','"&vcom&"')")

Vou explicar o q eu queria!

Em uma pagina anterior, ele seleciona todos os dados de um determinado registro e poe em textfilds para q eu posso atualizar! Soh q esse determinado ID é selecionado por Request.QueryString("id"), dae tem um botao de atualizar onde envia para o arquivo acima! (adm_atualiza.asp)

soh q ele esta dando aquele erro de instrução!

o q eu realmente queria é q ele atualizasse somente os dados de determinado ID!

alguem poderia me passar a instrução correta?
<?php
$nome = "Flávio Rodrigues";
$site = "http://www.expresso.com.br";
$idade = "21";
?>

nada é uma palavra esperando tradução...

#2 ESPIA

ESPIA

    Eu mesmo!

  • Usuários
  • 157 posts
  • Sexo:Não informado
  • Localidade:Curitiba/PR
  • Interesses:Processos de Engenharia e Qualidade de Software, mais especificamente Gerência de Projetos, requisitos e regras de Negócios, Técnicas de Análise (AE, OO), Projeto, Codificação (qualquer ferramenta), SGBDR e WEB development.

Posted 06/02/2004, 08:26

Pitacos:

1. Não use * na claúsula UPDATE. Coloque o nome dos campos certinho. (Mas pode não ser isso que tá errado). Se as variáveis não estiverem na mesma ordem do BD dá pau. Dá erro tb se vc não colocar uma variável pra cada campo (não pode faltar nenhum). Se tiver campo AutoNum dá pau de sintaxe mesmo se vc usar o * - asterisco.

2. Jogue a sua instrução UPDATE numa variável e debug (veja) ela antes do EXECUTE. É erro de sintaxe. Você só vai encontrar dando uma olhada no que a aplicação está fazendo antes de jogar no banco. (Poderia ser alguma var com Null (vazio) que o BD não aceita. Mas é sintaxe...)

(y)

Edição feita por: ESPIA, 06/02/2004, 08:29.

BB 20 4D 65 75 20 69 6E 74 65 72 65 73 73 65 20 61 71 75 69 20 E9 20 70 61 72 74 69 63 69 70 61 72 2C 20 64 65 20 66 6F 72 6D 61 20 70 6F 73 69 74 69 76 61 20 65 20 70 72 6F 64 75 74 69 76 61 2C 20 64 65 20 74 6F 64 61 73 20 61 73 20 64 69 73 63 75 73 73 F5 65 73 20 72 65 6C 61 63 69 6F 6E 61 64 61 73 20 61 20 48 61 72 64 77 61 72 65 2C 20 53 6F 66 74 77 61 72 65 20 65 20 57 65 62 20 44 65 76 65 6C 6F 70 6D 65 6E 74 2C 20 61 6C E9 6D 20 64 6F 20 70 72 F3 70 72 69 6F 20 72 65 6C 61 63 69 6F 6E 61 6D 65 6E 74 6F 20 65 20 64 65 73 65 6E 76 6F 6C 76 69 6D 65 6E 74 6F 20 68 75 6D 61 6E 6F 2C 20 65 6E 71 75 61 6E 74 6F 20 FA 74 69 6C 20 65 20 61 67 72 61 64 E1 76 65 6C 2E

» Deixe tudo um pouco melhor do que era antes de você chegar!

#3 KAKO-

KAKO-

    loading: again.........

  • Usuários
  • 236 posts
  • Sexo:Não informado
  • Localidade:Joinville
  • Interesses:ASP / PHP

Posted 06/02/2004, 08:34

desculpe minha ignorancia, mas nao compreendi o q vc quiz dizer

no entanto, posto o código pra melhor compeencao de todos!

<%@LANGUAGE="VBSCRIPT" CODEPAGE="1252"%>
<%
SET BANCO = SERVER.CREATEOBJECT("ADODB.CONNECTION")
BANCO.open "Driver={microsoft access driver (*.mdb)};dbq=C:\Inetpub\wwwroot\wmonline\banco.mdb"

vnome=Request.Form("nome")
vnick=Request.Form("nick")
vidade=Request.Form("idade")
vfoto=Request.Form("foto")
vcom=Request.Form("com")

set rs = BANCO.execute("update nome, nick, idade, foto, com from cadastro WHERE id ="&Request.QueryString("id")&"values('"&vnome&"','"&vnick&"','"&vidade&"','"&vfoto&"','"&vcom&"')")

%>
<html>
<head>
<title>Cadastro</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<body>
<table width="100%" border="0" cellspacing="0" cellpadding="0">
  <tr> 
    <td><div align="center"><a href="cadastrar.asp">Cadastrar</a></div></td>
    <td><div align="center"></div></td>
    <td><div align="center"><a href="listar.asp">Listar</a></div></td>
  </tr>
  <tr> 
    <td width="36%"><div align="center"></div></td>
    <td width="29%"><div align="center">
        <table width="100%" border="0" cellspacing="0" cellpadding="0">
          <tr> 
            <td><strong>Nome:</strong> <%=(vnome)%></td>
            <td>&nbsp; </td>
          </tr>
          <tr> 
            <td><strong>Nick:</strong> <%=(vnick)%></td>
            <td>&nbsp; </td>
          </tr>
          <tr> 
            <td><strong>Data Nascimento:</strong> <%=(vidade)%></td>
            <td>&nbsp; </td>
          </tr>
          <tr>
            <td><strong>Foto:</strong> <img src="<%=(vfoto)%>"></td>
            <td>&nbsp;</td>
          </tr>
          <tr> 
            <td><strong>Coment&aacute;rio: <%=(vcom)%></strong></td>
            <td>&nbsp;</td>
          </tr>
          <tr> 
            <td><div align="right"> </div></td>
            <td>&nbsp; </td>
          </tr>
        </table>
        <br>
        <strong>Os dados acima foram atualizados com sucesso!</strong><br>
        <br>
        <br>
      </div></td>
    <td width="35%"><div align="center"></div></td>
  </tr>
</table>
</body>
</html>

<?php
$nome = "Flávio Rodrigues";
$site = "http://www.expresso.com.br";
$idade = "21";
?>

nada é uma palavra esperando tradução...

#4 cybermix

cybermix

    andrewsmedina.com.br

  • Ex-Admins
  • 3586 posts
  • Sexo:Não informado
  • Localidade:Não sou desse planeta não!!!!
  • Interesses:python, fireworks, linux, php, flash...

Posted 06/02/2004, 08:35

kako o seu update esta + parecendo um insert. olha como é a forma geral de um update:

UPDATE TABELA SET CAMPO = 'VALOR'

outra coisa o rs so é utilizado em consultas.

veja como ficaria

BANCO.execute("update cadastro set nome = '"&vnome&"', nick = '"&vnick&"', idade = '"&vidade&"', foto = '"&vfoto&"', com = '"&vcom&"' WHERE id ="&Request.QueryString("id")

B)

qq coisa posta ae
www.andrewsmedina.com.br

#5 KAKO-

KAKO-

    loading: again.........

  • Usuários
  • 236 posts
  • Sexo:Não informado
  • Localidade:Joinville
  • Interesses:ASP / PHP

Posted 06/02/2004, 08:46

Aew cybermix, consegui compreender melhor, mas deu esse erro:

Tipo de erro:
Erro de compilação do Microsoft VBScript (0x800A03EE)
')' esperado
/wmonline/adm_atualiza.asp, line 12, column 180
set rs = BANCO.execute("update cadastro set nome = '"&vnome&"', nick = '"&vnick&"', idade = '"&vidade&"', foto = '"&vfoto&"', com = '"&vcom&"' WHERE id ="&Request.QueryString("id")
<?php
$nome = "Flávio Rodrigues";
$site = "http://www.expresso.com.br";
$idade = "21";
?>

nada é uma palavra esperando tradução...

#6 cybermix

cybermix

    andrewsmedina.com.br

  • Ex-Admins
  • 3586 posts
  • Sexo:Não informado
  • Localidade:Não sou desse planeta não!!!!
  • Interesses:python, fireworks, linux, php, flash...

Posted 06/02/2004, 08:50

BANCO.execute("update cadastro set nome = '"&vnome&"', nick = '"&vnick&"', idade = '"&vidade&"', foto = '"&vfoto&"', com = '"&vcom&"' WHERE id ="&Request.QueryString("id"))

eu havia esquecido de fechar os parenteses do execute. foi mau
www.andrewsmedina.com.br

#7 KAKO-

KAKO-

    loading: again.........

  • Usuários
  • 236 posts
  • Sexo:Não informado
  • Localidade:Joinville
  • Interesses:ASP / PHP

Posted 06/02/2004, 09:05

valeu cybermix,

agora funcionou certinho!

muito obrigado!
<?php
$nome = "Flávio Rodrigues";
$site = "http://www.expresso.com.br";
$idade = "21";
?>

nada é uma palavra esperando tradução...




1 user(s) are reading this topic

0 membro(s), 1 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq