Ir para conteúdo

POWERED BY:

Arquivado

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

Marcello-Master

Ao Alterar um dado de um Registro altera de todos

Recommended Posts

Boa Tarde Galera, estou tentando fazer alteração em um registro porem quando eu envio a alteração ele altera o mesmo campo de todos os registros que tenho....o que fiz de errado?????Esse é meu codigo

<%'Força o programador a declarar todas as variáveis, evitando erro de digitação no uso das variéveisOption Explicit'Não deixa informações no CacheResponse.Expires = 0'Declaração das variáveisDim objConn, strQuery, sql_query, RsQuery, campo, sql, id_imovelDim ObjRs, valor, endereco, referencia, desc_simples, tp_imovel, desc_lancamentoDim nivel_prioridade, desc_aluguel, ativo, desc_negrito01, desc_negrito02Dim desc_imovel, bairro, corretor'Atrubuição dos valores as respectivas variáveisvalor = Request.Form("valor")endereco = Request.Form("endereco")referencia = Request.Form("referencia")desc_simples = Request.Form("desc_simples")tp_imovel = request.Form("tp_imovel")desc_lancamento = request.Form("desc_lancamento")nivel_prioridade= request.form("nivel_prioridade")desc_aluguel = request.Form("desc_aluguel")ativo = request.form("ativo")desc_negrito01 = request.form("desc_negrito01")desc_negrito02 = request.form("desc_negrito02")desc_imovel = request.form("desc_imovel")bairro = request.form("bairro")corretor = request.form("corretor")id_imovel = Request.Form("id_imovel")'Cria o objeto RecordSet e atribui a variável Set objConn = Server.CreateObject("ADODB.Connection")'Abre a conexão com o banco de dados utilizando o Drive {Microsoft Access...'(para utilizar outro, ex: Paradox é só substituir o Drive pelo do Paradox)'(*.mdb) indica que o arquivo utiliza extensão mdbobjConn.Open "DBQ=" & Server.MapPath("..\bd\bd.mdb") & ";Driver={Microsoft Access Driver (*.mdb)}","username","password"strQuery = "UPDATE imovel SET tp_imovel='"&tp_imovel&"',valor='"&valor&"', endereco = '"&endereco&"', referencia='"&referencia&"', desc_simples='"&desc_simples&"', desc_lancamento='"&desc_lancamento&"', nivel_prioridade='"&nivel_prioridade&"', ativo='"&ativo&"', desc_negrito01='"&desc_negrito01&"', desc_negrito02='"&desc_negrito02&"', desc_imovel='"&desc_imovel&"',bairro='"&bairro&"', corretor='"&corretor&"',desc_aluguel='"&desc_aluguel&"' WHERE id_imovel='"&id_imovel"'"'Caso ocorra um erro esta função de erro será chamadaOn error Resume Next'Executaa inserção no Banco de Dados Set ObjRs = objConn.Execute(strQuery)'Fecha o Objeto de ConexãoobjConn.close'"APAGA" qualquer instancia que possa ter no objeto objRs e objConnSet objRs = NothingSet objConn = Nothing 'forumif err.number <> 0 Thenresponse.write("Erro código"&err.number &" - "& err.description)response.end()else'Redireciona o usuário caso não tenha ocorrido erro na transaçãoresponse.redirect "sucesso.asp"end if%>

Valew pela força.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Desculpa eu esqueci de colocar o erro:

Erro código-2147217900 - [Microsoft][Driver ODBC para Microsoft Access] Erro de sintaxe (operador faltando) na expressão de consulta 'id_imovel='.

Esse é o erro que apareceDesculpa eu esqueci de colocar o erro:

Erro código-2147217900 - [Microsoft][Driver ODBC para Microsoft Access] Erro de sintaxe (operador faltando) na expressão de consulta 'id_imovel='.

Esse é o erro que aparece bem nessa linha

strQuery = "UPDATE imovel SET tp_imovel='"&tp_imovel&"',valor='"&valor&"', endereco = '"&endereco&"', referencia='"&referencia&"', desc_simples='"&desc_simples&"', desc_lancamento='"&desc_lancamento&"', nivel_prioridade='"&nivel_prioridade&"', ativo='"&ativo&"', desc_negrito01='"&desc_negrito01&"', desc_negrito02='"&desc_negrito02&"', desc_imovel='"&desc_imovel&"',bairro='"&bairro&"', corretor='"&corretor&"',desc_aluguel='"&desc_aluguel&"' WHERE id_imovel='"&id_imovel"'"

Já tentei alterar de varias formas mas não dá certo....

Compartilhar este post


Link para o post
Compartilhar em outros sites

Camarada,Pra facilitar e agilizar a ajuda execute o seguinte código :

strQuery = "UPDATE imovel SET tp_imovel='"&tp_imovel&"',valor='"&valor&"', endereco = '"&endereco&"', referencia='"&referencia&"', desc_simples='"&desc_simples&"', desc_lancamento='"&desc_lancamento&"', nivel_prioridade='"&nivel_prioridade&"', ativo='"&ativo&"', desc_negrito01='"&desc_negrito01&"', desc_negrito02='"&desc_negrito02&"', desc_imovel='"&desc_imovel&"',bairro='"&bairro&"', corretor='"&corretor&"',desc_aluguel='"&desc_aluguel&"' WHERE id_imovel='"&id_imovel"'"response.write strQuery  & "<br>"response.end%>
E post o resultado aqui.t+

Boa Tarde Galera, estou tentando fazer alteração em um registro porem quando eu envio a alteração ele altera o mesmo campo de todos os registros que tenho....o que fiz de errado?????Esse é meu codigo

<%'Força o programador a declarar todas as variáveis, evitando erro de digitação no uso das variéveisOption Explicit'Não deixa informações no CacheResponse.Expires = 0'Declaração das variáveisDim objConn, strQuery, sql_query, RsQuery, campo, sql, id_imovelDim ObjRs, valor, endereco, referencia, desc_simples, tp_imovel, desc_lancamentoDim nivel_prioridade, desc_aluguel, ativo, desc_negrito01, desc_negrito02Dim desc_imovel, bairro, corretor'Atrubuição dos valores as respectivas variáveisvalor = Request.Form("valor")endereco = Request.Form("endereco")referencia = Request.Form("referencia")desc_simples = Request.Form("desc_simples")tp_imovel = request.Form("tp_imovel")desc_lancamento = request.Form("desc_lancamento")nivel_prioridade= request.form("nivel_prioridade")desc_aluguel = request.Form("desc_aluguel")ativo = request.form("ativo")desc_negrito01 = request.form("desc_negrito01")desc_negrito02 = request.form("desc_negrito02")desc_imovel = request.form("desc_imovel")bairro = request.form("bairro")corretor = request.form("corretor")id_imovel = Request.Form("id_imovel")'Cria o objeto RecordSet e atribui a variável Set objConn = Server.CreateObject("ADODB.Connection")'Abre a conexão com o banco de dados utilizando o Drive {Microsoft Access...'(para utilizar outro, ex: Paradox é só substituir o Drive pelo do Paradox)'(*.mdb) indica que o arquivo utiliza extensão mdbobjConn.Open "DBQ=" & Server.MapPath("..\bd\bd.mdb") & ";Driver={Microsoft Access Driver (*.mdb)}","username","password"strQuery = "UPDATE imovel SET tp_imovel='"&tp_imovel&"',valor='"&valor&"', endereco = '"&endereco&"', referencia='"&referencia&"', desc_simples='"&desc_simples&"', desc_lancamento='"&desc_lancamento&"', nivel_prioridade='"&nivel_prioridade&"', ativo='"&ativo&"', desc_negrito01='"&desc_negrito01&"', desc_negrito02='"&desc_negrito02&"', desc_imovel='"&desc_imovel&"',bairro='"&bairro&"', corretor='"&corretor&"',desc_aluguel='"&desc_aluguel&"' WHERE id_imovel='"&id_imovel"'"'Caso ocorra um erro esta função de erro será chamadaOn error Resume Next'Executaa inserção no Banco de Dados Set ObjRs = objConn.Execute(strQuery)'Fecha o Objeto de ConexãoobjConn.close'"APAGA" qualquer instancia que possa ter no objeto objRs e objConnSet objRs = NothingSet objConn = Nothing 'forumif err.number <> 0 Thenresponse.write("Erro código"&err.number &" - "& err.description)response.end()else'Redireciona o usuário caso não tenha ocorrido erro na transaçãoresponse.redirect "sucesso.asp"end if%>

Valew pela força.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Coloquei exatamento como você colocou e apareceu o seguinte:

UPDATE imovel SET tp_imovel='Apartamento',valor='', endereco = '', referencia='', desc_simples='teste', desc_lancamento='Sim', nivel_prioridade='1', ativo='1', desc_negrito01='', desc_negrito02='', desc_imovel='',bairro='', corretor='',desc_aluguel='Alugado' WHERE id_imovel=

Compartilhar este post


Link para o post
Compartilhar em outros sites

Camarada,

 

O erro esta ocorrendo pq seu ID_IMOVEL es null.

corretor='',desc_aluguel='Alugado' WHERE id_imovel=

Esta vendo o = no final? Cadê o conteúdo do campo ID_IMOVEL?

 

Na verdade têm vários campo com valor nulo: valor='', endereco = '', referencia='' isto esta correto?

 

 

 

 

Coloquei exatamento como você colocou e apareceu o seguinte:

 

UPDATE imovel SET tp_imovel='Apartamento',valor='', endereco = '', referencia='', desc_simples='teste', desc_lancamento='Sim', nivel_prioridade='1', ativo='1', desc_negrito01='', desc_negrito02='', desc_imovel='',bairro='', corretor='',desc_aluguel='Alugado' WHERE id_imovel=

Compartilhar este post


Link para o post
Compartilhar em outros sites

verifique se está correto o nome no formulário(id_movel) e se o mesmo contem um value pois na página asp você recupera o valor nessa parte

id_imovel = Request.Form("id_imovel")

faça um tratamento antes de executar

if id_movel<>"" or id_movel>0 thenSet ObjRs = objConn.Execute(strQuery)elseresponse.write("Erro ao atualzar. Não foi passado o parâmetro do registro")response.end()end if

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.