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

[dúvida]Erro no UPDATE mysql x ASP


TriaD

Pergunta

Olá a todos do ScriptBrasil...

tenho uma dúvida e gostaria de saber se alguém pode me ajudar...

é o seguinte...

to desenvolvendo uma aplicação e nela eu tenho um botão para editar contatos cadastrados no banco de dados...

quando eu clico no botão abre um formulário com os dados já preenchidos e o usuário somente altera os dados que deseja atualizar...

No entanto não funcionava... dai eu fiquei tentando durante 2 horas achar o erro e concertar...

eu o encontrei mas não consegui solucionar...

seguinte:

O código abaixo é o que apresenta problema e o problema reside no final do código onde eu boto where id="&id

creio que isso acontece porque eu não boto aspas ao final do código...

mas eu tentei de tudo pra concertar não obtive exito

sqlstmt = "update licitacoes set num_licenciamento="&num_licitacao&", orgao='"&orgao&"', nome='"&nome&"',email='"&email&"',ddd='"&ddd&"',telefone='"&telefone&"' where id="&id
connect.execute sqlstmt
Para identificar o erro eu simplesmente troquei a variavel por um número de id qualquer cadastrado
sqlstmt = "update licitacoes set num_licenciamento="&num_licitacao&", orgao='"&orgao&"', nome='"&nome&"',email='"&email&"',ddd='"&ddd&"',telefone='"&telefone&"' where id=1"
connect.execute sqlstmt

aí rodou legal.... então eu preciso de uma maneira de efetuar essa operação só que usando uma variavel pra identificar o id...

alguém pode ajudar?

Link para o comentário
Compartilhar em outros sites

5 respostass a esta questão

Posts Recomendados

  • 0

Qual a mensagem de erro aparece?

De qualquer forma tenta fazer isso:

sqlstmt = "update licitacoes set num_licenciamento="&num_licitacao&", orgao='"&orgao&"', nome='"&nome&"',email='"&email&"',ddd='"&ddd&"',telefone='"&telefone&"' where id=" & val(id)
connect.execute sqlstmt

Tenta converter o "id" para número (se ainda não o for)

Link para o comentário
Compartilhar em outros sites

  • 0

Bom... acredito que possam ser dois problemas:

1) o campo id do form está como número? porque se não tiver o correto seria where id='"&id;

2) Existe realmente esse campo id? Posta a mensagem de erro que fica mais fácil, ok?

3) A variável id é chamada como? vem do form? vem de uma consulta? porque você esta tentando comparar um campo id a uma variável tb id! portanto o problema pode ser na variável que esta vindo nula! uma boa forma de testar isso seria dar um debug na intrução de update, desta forma:

sqlstmt = "update licitacoes set num_licenciamento="&num_licitacao&", orgao='"&orgao&"', nome='"&nome&"',email='"&email&"',ddd='"&ddd&"',telefone='"&telefone&"' where id="&id
'inicio debug
response.write sqlstmt
response.end
'fim debug
connect.execute sqlstmt

Posta aqui a mensagem de erro e tb o resultado do debug... posta tb o código completo... a instrução de update está certa... o problema deve ser outro!

[]'s Rafael Spilki

Link para o comentário
Compartilhar em outros sites

  • 0
Bom... acredito que possam ser dois problemas:

1) o campo id do form está como número? porque se não tiver o correto seria where id='"&id;

2) Existe realmente esse campo id? Posta a mensagem de erro que fica mais fácil, ok?

3) A variável id é chamada como? vem do form? vem de uma consulta? porque você esta tentando comparar um campo id a uma variável tb id! portanto o problema pode ser na variável que esta vindo nula! uma boa forma de testar isso seria dar um debug na intrução de update, desta forma:

sqlstmt = "update licitacoes set num_licenciamento="&num_licitacao&", orgao='"&orgao&"', nome='"&nome&"',email='"&email&"',ddd='"&ddd&"',telefone='"&telefone&"' where id="&id
'inicio debug
response.write sqlstmt
response.end
'fim debug
connect.execute sqlstmt
Posta aqui a mensagem de erro e tb o resultado do debug... posta tb o código completo... a instrução de update está certa... o problema deve ser outro! []'s Rafael Spilki
Cara... como eu disse acima, quando eu faço o teste com o codigo que eu postei e segundo, funciona... o campo id é numero... o problema é que eu tenho que fechar a instrução pra dar certo não é? botar as aspas no final... mas como a variavel id é a ultima coisa da minha instrução sql, ela fica 'solta' no final (where id="&id) e eu acho que o erro ta ai... nada de erro como campos nulos ou qualquer coisa do tipo... não me retorna erro porque o asp ta certo, só que o comando não consegue ser efetuado por um erro na estrutura... seria o mesmo de tentar inserir um dado com insert e no dado em ver de numero você botar uma string... dai simplesmente não iria inserir e não retornaria erro... o esquema que eu quero é saber COMO fechar a minha instrução sql de forma que o "&id" fique entre aspas exemplo de como está (substituindo as variaveis)
sqlstmt = "update licitacoes set num_licitacao=2306, orgao='STF', nome='felipe', email='email@email.com', ddd='61', telefone='30363304' where id="1
o erro está no '1' fora da string... como deve ficar:
sqlstmt = "update licitacoes set num_licitacao=2306, orgao='STF', nome='felipe', email='email@email.com', ddd='61', telefone='30363304' where id=1"

só que usando variaveis, eu gostaria de saber como acrecentar aspas ao final...

eu pensei que não precisasse, mas já fiz os testes e só pode ser isso mesmo... porque se substituir essa variavel por um numero qualquer, funciona

Link para o comentário
Compartilhar em outros sites

  • 0

Poderia postar a forma como solucionou o seu problema para que outros tb possam aprender?

quanto a "fechar" sua instrução... insisto... sua instrução estava correta... não precisa necessariamente terminar com " não... pode ser da forma como estava... existem várias outras formas de fazer a mesma instrução... diferentes sintaxes e etc... mas não acho que vem ao caso...

enfim... fiquei bem curioso pra saber o desfecho... se puder postar aí poderá acrescentar conhecimento a mim e a muita gente tb!

Forte abraço

Rafael Spilki

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