RINGO Postado Julho 8, 2004 Denunciar Share Postado Julho 8, 2004 Fala camaradas,Será que alguém pode me auxiliar? estou tentando fazer uma ALTERAÇÃOno banco de dados. Só que quando eu vou alterar, ele está dando erro de sintexe no UPDATE.Se alguém poder dar uma lida na linha do UPDATE e ver se está certo, eu ficarei grato.Um grande abraço.<HTML><HEAD> <TITLE>altera_2.asp</TITLE> <body bgcolor="aqua"></HEAD> <% 'ativa tratamento de erros on error resume next 'atribui os valores do formulario as variaveis nome=request.form("nome") endereco=request.form("endereco") codigo=request.form("codigo") Set Conn = Server.CreateObject("ADODB.Connection") 'O DSN utilizado para a base de dados Bibio.mdb é : asp_db conn.open "asp_db" 'monta consulta para atualiza os registros SQL = "UPDATE authors SET " SQL = SQL & "Author='" & nome & "'," SQL = SQL & "endereco='" & endereco & "'," SQL = SQL & " WHERE Au_ID=" & codigo Set RS = Conn.Execute(SQL) 'se houve algum erro, detalha If err.number>0 then response.write "Ocorreram os seguintes erros no Script: " & "<P>" response.write "Erro Numero=" & err.number & "<P>" response.write "Descricao=" & err.description & "<P>" response.write "Contexto de Ajuda=" & err.helpcontext & "<P>" response.write "Caminho de Ajuda=" & err.helppath & "<P>" response.write "Erro Nativo=" & err.nativeerror & "<P>" response.write "Fonte=" & err.source & "<P>" response.write "SQLState=" & err.sqlstate & "<P>" end if IF conn.errors.count> 0 then response.write "Ocorreu um erro no Banco de Dados " & "<P>" response.write SQLstmt & "<P>" for counter= 0 to conn.errors.count response.write "Error #" & conn.errors(counter).number & "<P>" response.write "Error desc. -> " & conn.errors(counter).description & "<P>" next else response.write "<B>Alterações gravadas com sucesso !!!</b>" response.write "<hr>" response.write "<br>" & "A consulta utilizada foi a seguinte: " response.write "<br>" & SQL response.write "<br>" response.write "<br>" & "Os novos dados são : " response.write "<br>" response.write "<br>" & "Codigo - " & codigo response.write "<br>" & "Nome - " & nome response.write "<br>" & "Data de Nascimento - " & ano end if rs.close set rs=nothing Conn.Close set conn=nothing %> <hr> <a href="altera.asp">Voltar</a> </BODY> </HTML> Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Duffy Postado Julho 8, 2004 Denunciar Share Postado Julho 8, 2004 Cara de um response.write da variavel SQL pra ver como ela está montada q fica mais fácil de ver o erro Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 dark0 Postado Julho 8, 2004 Denunciar Share Postado Julho 8, 2004 e cade a descrição do erro? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Guest Guest Postado Julho 8, 2004 Denunciar Share Postado Julho 8, 2004 SQL = SQL & "Author='" & nome & "'," SQL = SQL & "endereco='" & endereco & "'," SQL = SQL & " WHERE Au_ID=" & codigo Essa vírgula depois de endereço não tem.... Fica assim: SQL = SQL & "endereco='" & endereco & "'" SQL = SQL & " WHERE Au_ID=" & codigo Acho que isso deve resolver o problema... Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 bareta Postado Julho 8, 2004 Denunciar Share Postado Julho 8, 2004 bom vamo lá...'monta consulta para atualiza os registros SQL = "UPDATE authors SET Author='" & nome & "',endereco='" & endereco & "' WHERE Au_ID=" & codigo Set RS = Conn.Execute(SQL) Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Guest - ringo - Postado Julho 12, 2004 Denunciar Share Postado Julho 12, 2004 Valeu Bareta.Funcionou.Grato Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 bareta Postado Julho 12, 2004 Denunciar Share Postado Julho 12, 2004 ok qualquer coisa poste ai............. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 [ GuTo ] Postado Julho 13, 2004 Denunciar Share Postado Julho 13, 2004 bom vamo lá...'monta consulta para atualiza os registros SQL = "UPDATE authors SET Author='" & nome & "',endereco='" & endereco & "' WHERE Au_ID=" & codigo Set RS = Conn.Execute(SQL) O correto é assim: SQL = "UPDATE authors SET Author='" & nome & "',endereco='" & endereco & "' WHERE Au_ID=" & codigo Conn.Execute(SQL)Não é necessário setar um recordset pra os métodos: UPDATE, INSERT E DELETE.Já comentei isso bastante.Somente o método SELECT é o que precisa de recordset. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 bareta Postado Julho 13, 2004 Denunciar Share Postado Julho 13, 2004 so gutinho..........beleza.....mais nos dois metodos ele funciona....hehehe...mais não sabia dessa.............vlw.......... Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
RINGO
Fala camaradas,
Será que alguém pode me auxiliar? estou tentando fazer uma ALTERAÇÃO
no banco de dados. Só que quando eu vou alterar, ele está dando erro de sintexe no UPDATE.
Se alguém poder dar uma lida na linha do UPDATE e ver se está certo, eu ficarei grato.
Um grande abraço.
<HTML><HEAD>
<TITLE>altera_2.asp</TITLE>
<body bgcolor="aqua"></HEAD>
<%
'ativa tratamento de erros
on error resume next
'atribui os valores do formulario as variaveis
nome=request.form("nome")
endereco=request.form("endereco")
codigo=request.form("codigo")
Set Conn = Server.CreateObject("ADODB.Connection")
'O DSN utilizado para a base de dados Bibio.mdb é : asp_db
conn.open "asp_db"
'monta consulta para atualiza os registros
SQL = "UPDATE authors SET "
SQL = SQL & "Author='" & nome & "',"
SQL = SQL & "endereco='" & endereco & "',"
SQL = SQL & " WHERE Au_ID=" & codigo
Set RS = Conn.Execute(SQL)
'se houve algum erro, detalha
If err.number>0 then
response.write "Ocorreram os seguintes erros no Script: " & "<P>"
response.write "Erro Numero=" & err.number & "<P>"
response.write "Descricao=" & err.description & "<P>"
response.write "Contexto de Ajuda=" & err.helpcontext & "<P>"
response.write "Caminho de Ajuda=" & err.helppath & "<P>"
response.write "Erro Nativo=" & err.nativeerror & "<P>"
response.write "Fonte=" & err.source & "<P>"
response.write "SQLState=" & err.sqlstate & "<P>"
end if
IF conn.errors.count> 0 then
response.write "Ocorreu um erro no Banco de Dados " & "<P>"
response.write SQLstmt & "<P>"
for counter= 0 to conn.errors.count
response.write "Error #" & conn.errors(counter).number & "<P>"
response.write "Error desc. -> " & conn.errors(counter).description & "<P>"
next
else
response.write "<B>Alterações gravadas com sucesso !!!</b>"
response.write "<hr>"
response.write "<br>" & "A consulta utilizada foi a seguinte: "
response.write "<br>" & SQL
response.write "<br>"
response.write "<br>" & "Os novos dados são : "
response.write "<br>"
response.write "<br>" & "Codigo - " & codigo
response.write "<br>" & "Nome - " & nome
response.write "<br>" & "Data de Nascimento - " & ano
end if
rs.close
set rs=nothing
Conn.Close
set conn=nothing
%>
<hr>
<a href="altera.asp">Voltar</a>
</BODY>
</HTML>
Link para o comentário
Compartilhar em outros sites
8 respostass a esta questão
Posts Recomendados
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.