• 0
Sign in to follow this  
Mateustg

Update

Question

Olá, tenho vários dados que foram cadastrados...tenho uma área onde posso acessar para trocar os dados caso necessário...então lá me mostra todos os dados que cadastrei...quero q se for mudado algum destes dados ele faça um update na tabela, mas como faço isso...para inserir os dados eu usei assim:

sql = "Insert into users (username,firstname,password,email,endereco,bairro,cidade,estado,comentario,olhos,cabelos,pele,fisico,altura,foto) values ('"& username &"', '"& firstname &"', '"& password &"', '"& email &"', '"& endereco &"', '"& bairro &"', '"& cidade &"', '"& estado &"', '"& comentario &"', '"& olhos &"', '"& cabelos &"', '"& pele &"', '"& fisico &"', '"& altura &"', '"& cfoto &"')"

Conexao.Execute(sql)

Como faço para fazer o update desses dados?

Share this post


Link to post
Share on other sites

15 answers to this question

Recommended Posts

  • 0

tentei fazer o que você me falou, assim:

sql = "UPDATE users set username= "& username &",firstname= "& firstname &", password= "& password &", email= "& email &", endereco= "& endereco &", bairro= "& bairro &", cidade= "& cidade &", estado= "& estado &", comentario= "& comentario &", olhos= "& olhos &", cabelos= "& cabelos &", pele= "& pele &", fisico= "& fisico &", altura= "& altura &", foto= "& foto

Conexao.Execute(sql)

mas ta dando esse erro:

Microsoft OLE DB Provider for ODBC Drivers error '80040e14'

[Microsoft][ODBC Microsoft Access Driver] Syntax error (missing operator) in query expression '[email protected]'.

/cadastro/upload_form3.asp, line 89

Share this post


Link to post
Share on other sites
  • 0

você tem que cuidar os campso que são texto e os que não numéricos.

todo campo texto sempre tem que ter as ''.

no caso, provavelmente o e-mail é texto.

então na hora de dar o update, tem que ficar assim:

sql = "UPDATE users set username= "& username &",firstname= "& firstname &", password= "& password &", email= '"& email &"', endereco= "& endereco &", bairro= "& bairro &", cidade= "& cidade &", estado= "& estado &", comentario= "& comentario &", olhos= "& olhos &", cabelos= "& cabelos &", pele= "& pele &", fisico= "& fisico &", altura= "& altura &", foto= "& foto

e fazer isso com todos os outros campos texto.

Share this post


Link to post
Share on other sites
  • 0

ah, e tb tem que cuidar que tá faltando um WHERE no final desse seu update.

quando você executar a consulta, vai atualizar todos os registros da sua tabela.

Share this post


Link to post
Share on other sites
  • 0

coloquei os dados com você falou e também o Where no final, porém agora ele está mostrando esse erro:

Microsoft OLE DB Provider for ODBC Drivers error '80040e14'

[Microsoft][ODBC Microsoft Access Driver] Syntax error in string in query expression ''?????AA??'.

Share this post


Link to post
Share on other sites
  • 0

ficou assim:

sql = "UPDATE users set username= '"& username &"',firstname= '"& firstname &"', password= '"& password &"', email= '"& email &"', endereco= '"& endereco &"', bairro= '"& bairro &"', cidade= '"& cidade &"', estado= '"& estado &"', comentario= '"& comentario &"', olhos= '"& olhos &"', cabelos= '"& cabelos &"', pele= '"& pele &"', fisico= '"& fisico &"', altura= '"& altura &"', foto= '"& foto"' WHERE password= '"& password &"' "

Share this post


Link to post
Share on other sites
  • 0

bem...o que estou fazendo é o seguinte...eu tenho uma área de upload, onde envia todos os dados inclusive um foto para uma pasta...até aqui tudo beleza...eu quero poder modificar estes dados cadastrados se necessário, dai o update....então estou fazendo do mesmo modo como o upload, porém em vez de inserir os dados (insert) eu estou fazendo um update:

<!-- #include file = "upload_funcoes.asp" -->
<%

' Chamando Funções, que fazem o Upload funcionar
byteCount = Request.TotalBytes
RequestBin = Request.BinaryRead(byteCount)
Set UploadRequest = CreateObject("Scripting.Dictionary")
BuildUploadRequest RequestBin

' Recuperando os Dados Digitados ----------------------
username = UploadRequest.Item("username").Item("Value")
firstname = UploadRequest.Item("firstname").Item("Value")
password = UploadRequest.Item("password").Item("Value")
passwordconfirm = UploadRequest.Item("passwordconfirm").Item("Value")
sex = UploadRequest.Item("sex").Item("Value")
email = UploadRequest.Item("email").Item("Value")
endereco = UploadRequest.Item("endereco").Item("Value")
bairro = UploadRequest.Item("bairro").Item("Value")
cidade = UploadRequest.Item("cidade").Item("Value")
estado = UploadRequest.Item("estado").Item("Value")
blog = UploadRequest.Item("blog").Item("Value")
fotolog = UploadRequest.Item("fotolog").Item("Value")
orkut = UploadRequest.Item("orkut").Item("Value")
icq = UploadRequest.Item("icq").Item("Value")
MSN = UploadRequest.Item("MSN").Item("Value")
ec_icon = UploadRequest.Item("ec_icon").Item("Value")
ocupacao = UploadRequest.Item("ocupacao").Item("Value")
empresa = UploadRequest.Item("empresa").Item("Value")
hobby = UploadRequest.Item("hobby").Item("Value")
escolaridade = UploadRequest.Item("escolaridade").Item("Value")
educacao = UploadRequest.Item("educacao").Item("Value")
atividades = UploadRequest.Item("atividades").Item("Value")
fumante = UploadRequest.Item("fumante").Item("Value")
bebida = UploadRequest.Item("bebida").Item("Value")
comentario = UploadRequest.Item("comentario").Item("Value")
olhos = UploadRequest.Item("olhos").Item("Value")
cabelos = UploadRequest.Item("cabelos").Item("Value")
pele = UploadRequest.Item("pele").Item("Value")
fisico = UploadRequest.Item("fisico").Item("Value")
altura = UploadRequest.Item("altura").Item("Value")
favbebida = UploadRequest.Item("favbebida").Item("Value")
favcidade = UploadRequest.Item("favcidade").Item("Value")
favlivro = UploadRequest.Item("favlivro").Item("Value")
favfilme = UploadRequest.Item("favfilme").Item("Value")
favmusica = UploadRequest.Item("favmusica").Item("Value")
favcomida = UploadRequest.Item("favcomida").Item("Value")
favlugar = UploadRequest.Item("favlugar").Item("Value")
favesporte = UploadRequest.Item("favesporte").Item("Value")
dob = UploadRequest.Item("dob").Item("Value")

' Tipo de arquivo que esta sendo enviado
tipo_foto = UploadRequest.Item("foto").Item("ContentType")

' Caminho completo dos arquivos enviados
caminho_foto = UploadRequest.Item("foto").Item("FileName")

' Nome dos arquivos enviados
nome_foto = Right(caminho_foto,Len(caminho_foto)-InstrRev(caminho_foto,"\"))

' Conteudo binario dos arquivos enviados
foto = UploadRequest.Item("foto").Item("Value")

' pasta onde as imagens serao guardadas
pasta = Server.MapPath("imagem/")

nome_foto = "/"&nome_foto

' pasta + nome dos arquivos
cfoto = "imagem" + nome_foto

' Fazendo o Upload do arquivo selecionado
if foto <> "" then

    Set ScriptObject = Server.CreateObject("Scripting.FileSystemObject")
    Set MyFile = ScriptObject.CreateTextFile(pasta & nome_foto)
    For i = 1 to LenB(foto)
  MyFile.Write chr(AscB(MidB(foto,i,1)))
    Next
    MyFile.Close

end if

' Conecta-se ao Banco de Dados
set conexao = Server.CreateObject("ADODB.Connection")
conexao.open "DRIVER={Microsoft Access Driver (*.mdb)};DBQ=" & server.mappath("siteusers.mdb")    

' cadastra os dados no banco de dados
sql = "UPDATE users set username='"& username &"', firstname='"& firstname &"', password='"& password &"', passwordconfirm='"& passwordconfirm &"', sex='"& sex &"', email='"& email &"', endereco='"& endereco &"', bairro='"& bairro &"', cidade='"& cidade &"', estado='"& estado &"', blog='"& blog &"', fotolog='"& fotolog &"', orkut='"& orkut &"', icq='"& icq &"', MSN='"& MSN &"', ec_icon="& ec_icon &", ocupacao='"& ocupacao &"', empresa='"& empresa &"', hobby='"& hobby &"', escolaridade='"& escolaridade &"', educacao='"& educacao &"', atividades='"& atividades &"', fumante='"& fumante &"', bebida='"& bebida &"', comentario='"& comentario &"', olhos='"& olhos &"', cabelos='"& cabelos &"', pele='"& pele &"', fisico='"& fisico &"', altura='"& altura &"', favbebida='"& favbebida &"', favcidade='"& favcidade &"', favlivro='"& favlivro &"', favfilme='"& favfilme &"', favmusica='"& favmusica &"', favcomida='"& favcomida &"', favlugar='"& favlugar &"', favesporte='"& favesporte &"', dob='"& dob &"', foto='"& foto &"' WHERE password='"& pasword &"'"
Conexao.Execute(sql)

' Mostra Mensagem de Confirmação na Tela
Response.write "<b><font size=3>Dados Cadastrados com Sucesso!</font></b>"

' Redireciona após 5 segundos
response.write "<br><br>Você será redirecionado em 5 segundos..<br>"
response.write "<meta http-equiv='refresh' content='5; url=index2.asp'/>"

Share this post


Link to post
Share on other sites
  • 0

em vez de executar o sql, de um response.write so de teste. veja como ficou a string sql e tente executar como consulta direto no access (ou no banco q estiver utilizando).

ou poste ae como fica a string pra gente analizar melhor.

Share this post


Link to post
Share on other sites
  • 0

outra coisa, q não é a causa do erro mas acho q vai dar problema é q c ta usando o password no where.

tudo bem q eu não sei o q é esta pagina q você esta fazendo, mas no where o certo não seria utilizar um campo chave como um código, ou o user name em vez do password?

já q dois usuarios podem ter password iguais. você estaria atualizando os dois usuarios ao mesmo tempo.

Share this post


Link to post
Share on other sites
  • 0

A dica do Kuroi deve sempre ser utilizada nesses casos... MUITO UTIL.. mas analizando seu codigo o que eu achei errado é que falta um & veja:

sql = "UPDATE users set username= '"& username &"',firstname= '"& firstname &"', password= '"& password &"', email= '"& email &"', endereco= '"& endereco &"', bairro= '"& bairro &"', cidade= '"& cidade &"', estado= '"& estado &"', comentario= '"& comentario &"', olhos= '"& olhos &"', cabelos= '"& cabelos &"', pele= '"& pele &"', fisico= '"& fisico &"', altura= '"& altura &"', foto= '"& foto & "' WHERE password= '"& password &"' "

Share this post


Link to post
Share on other sites
  • 0

não entendi como fazer o que você falou Kuroi...e ao código, postei ele em cima

sim, mas o sql vai ficar diferente.

exmplo:

"UPDATE users set username='"& username &"',
se eu tiver digitado kuroi na variavel username, a string do sql ficar assim:
"UPDATE users set username='kuroi',

entendeu?

depois de passar o valor para a variavel sql, mostre o valor dela na tela (so de teste pra você poder ver, depois apague) em vez de executar o sql.

e ai poste a string pra gente poder ver, ou tente executar como consulta (view) no seu banco de dados porque ai talvez ele aponte onde esta o erro.

isso se a andreia já não tiver resolvido seu problema...

Share this post


Link to post
Share on other sites
  • 0

Coloquei o response.write e descobri que o erro está dando no item de foto...onde apresenta foto='?????AA??

Q é do erro q dá:

Microsoft OLE DB Provider for ODBC Drivers error '80040e14'

[Microsoft][ODBC Microsoft Access Driver] Syntax error in string in query expression ''?????AA??'.

Bem, este item é o seguinte...eu cadastro uma foto, está foto é enviada para dentro de uma pasta no servidor (upload) e o que quero fazer é que se a pessoa quiser trocar a foto dela...então ela terá q atualizar o cadastro, trocando a mesma...ai q está dando erro, pois quero fazer o update da foto...como faço, sendo q a foto atualizada tem q ser gravada dentro da pasta imagens.

O código de upload q tenho e estou mexendo é este:

<!-- #include file = "upload_funcoes.asp" -->
<%

' Chamando Funções, que fazem o Upload funcionar
byteCount = Request.TotalBytes
RequestBin = Request.BinaryRead(byteCount)
Set UploadRequest = CreateObject("Scripting.Dictionary")
BuildUploadRequest RequestBin

' Recuperando os Dados Digitados ----------------------
username = UploadRequest.Item("username").Item("Value")
firstname = UploadRequest.Item("firstname").Item("Value")
password = UploadRequest.Item("password").Item("Value")
passwordconfirm = UploadRequest.Item("passwordconfirm").Item("Value")
sex = UploadRequest.Item("sex").Item("Value")
email = UploadRequest.Item("email").Item("Value")
endereco = UploadRequest.Item("endereco").Item("Value")
bairro = UploadRequest.Item("bairro").Item("Value")
cidade = UploadRequest.Item("cidade").Item("Value")
estado = UploadRequest.Item("estado").Item("Value")
blog = UploadRequest.Item("blog").Item("Value")
fotolog = UploadRequest.Item("fotolog").Item("Value")
orkut = UploadRequest.Item("orkut").Item("Value")
icq = UploadRequest.Item("icq").Item("Value")
MSN = UploadRequest.Item("MSN").Item("Value")
ec_icon = UploadRequest.Item("ec_icon").Item("Value")
ocupacao = UploadRequest.Item("ocupacao").Item("Value")
empresa = UploadRequest.Item("empresa").Item("Value")
hobby = UploadRequest.Item("hobby").Item("Value")
escolaridade = UploadRequest.Item("escolaridade").Item("Value")
educacao = UploadRequest.Item("educacao").Item("Value")
atividades = UploadRequest.Item("atividades").Item("Value")
fumante = UploadRequest.Item("fumante").Item("Value")
bebida = UploadRequest.Item("bebida").Item("Value")
comentario = UploadRequest.Item("comentario").Item("Value")
olhos = UploadRequest.Item("olhos").Item("Value")
cabelos = UploadRequest.Item("cabelos").Item("Value")
pele = UploadRequest.Item("pele").Item("Value")
fisico = UploadRequest.Item("fisico").Item("Value")
altura = UploadRequest.Item("altura").Item("Value")
favbebida = UploadRequest.Item("favbebida").Item("Value")
favcidade = UploadRequest.Item("favcidade").Item("Value")
favlivro = UploadRequest.Item("favlivro").Item("Value")
favfilme = UploadRequest.Item("favfilme").Item("Value")
favmusica = UploadRequest.Item("favmusica").Item("Value")
favcomida = UploadRequest.Item("favcomida").Item("Value")
favlugar = UploadRequest.Item("favlugar").Item("Value")
favesporte = UploadRequest.Item("favesporte").Item("Value")
dob = UploadRequest.Item("dob").Item("Value")

' Tipo de arquivo que esta sendo enviado
tipo_foto = UploadRequest.Item("foto").Item("ContentType")

' Caminho completo dos arquivos enviados
caminho_foto = UploadRequest.Item("foto").Item("FileName")

' Nome dos arquivos enviados
nome_foto = Right(caminho_foto,Len(caminho_foto)-InstrRev(caminho_foto,"\"))

' Conteudo binario dos arquivos enviados
foto = UploadRequest.Item("foto").Item("Value")

' pasta onde as imagens serao guardadas
pasta = Server.MapPath("imagem/")

nome_foto = "/"&nome_foto

' pasta + nome dos arquivos
cfoto = "imagem" + nome_foto

' Fazendo o Upload do arquivo selecionado
if foto <> "" then

    Set ScriptObject = Server.CreateObject("Scripting.FileSystemObject")
    Set MyFile = ScriptObject.CreateTextFile(pasta & nome_foto)
    For i = 1 to LenB(foto)
  MyFile.Write chr(AscB(MidB(foto,i,1)))
    Next
    MyFile.Close

end if

' Conecta-se ao Banco de Dados
set conexao = Server.CreateObject("ADODB.Connection")
conexao.open "DRIVER={Microsoft Access Driver (*.mdb)};DBQ=" & server.mappath("siteusers.mdb")    

' cadastra os dados no banco de dados
sql = "UPDATE users set username='"& username &"', firstname='"& firstname &"', password='"& password &"', passwordconfirm='"& passwordconfirm &"', sex='"& sex &"', email='"& email &"', endereco='"& endereco &"', bairro='"& bairro &"', cidade='"& cidade &"', estado='"& estado &"', blog='"& blog &"', fotolog='"& fotolog &"', orkut='"& orkut &"', icq='"& icq &"', MSN='"& MSN &"', ec_icon="& ec_icon &", ocupacao='"& ocupacao &"', empresa='"& empresa &"', hobby='"& hobby &"', escolaridade='"& escolaridade &"', educacao='"& educacao &"', atividades='"& atividades &"', fumante='"& fumante &"', bebida='"& bebida &"', comentario='"& comentario &"', olhos='"& olhos &"', cabelos='"& cabelos &"', pele='"& pele &"', fisico='"& fisico &"', altura='"& altura &"', favbebida='"& favbebida &"', favcidade='"& favcidade &"', favlivro='"& favlivro &"', favfilme='"& favfilme &"', favmusica='"& favmusica &"', favcomida='"& favcomida &"', favlugar='"& favlugar &"', favesporte='"& favesporte &"', dob='"& dob &"', foto='"& foto &"' WHERE username='"& username &"'"
Conexao.Execute(sql)

' Mostra Mensagem de Confirmação na Tela
Response.write "<b><font size=3>Dados Cadastrados com Sucesso!</font></b>"

' Redireciona após 5 segundos
response.write "<br><br>Você será redirecionado em 5 segundos..<br>"
response.write "<meta http-equiv='refresh' content='5; url=index2.asp'/>"
%>

Share this post


Link to post
Share on other sites
  • 0

Galera, pode deixar, já resolvi agora...era um erro besta q eu estava cometendo...onde eu coloquei foto='"& foto &"' na verdade é foto='"& cfoto &"'...só por uma letrinha o treco tava travando...nossa vlw de mais a ajuda de vocês...brigadu!!!

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this