MaximoAccess

Caro Usuário, não tire as suas duvidas nas Salas de Repositório, abra sempre um novo tópico relacionado, nas salas destinadas para o efeito, como Sala de Tabelas, Consultas, Formulários, Relatórios, Macros, Módulos e VBA.

Obrigado

Administração do MaximoAccess

Dicas Ms Access, Exemplos Ms Access, Codigos VBA Ms Access, SQL Ms Access

    [Resolvido]Comando SQL não faz update no campo

    Compartilhe

    a81796
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 23
    Registrado : 12/08/2014

    [Resolvido]Comando SQL não faz update no campo

    Mensagem  a81796 em Sab 15 Out 2016, 00:43

    Estou tentando usar este comando mas não está funcionando

    strUpdate = "Update tbl_ROMANEIOS SET DATA_DO_CRÉDITO = #27/10/2016# WHERE DATA DA ENTREGA>=#01/10/2016;"

    Quando uso sem o Where funciona.

    strUpdate = "Update tbl_ROMANEIOS SET DATA_DO_CRÉDITO = #27/10/2016#;"

    Então pensei que poderia ser por causa dos espaços no nome do campo DATA DA ENTREGA. Criei um campo para testar,chamado DT_ENTREGA e funcionou direito.

    A pergunta é:

    Como faço para a sintaxe funcionar com o campo DATA DA ENTREGA (com espaços) ?

    obrigado


    Última edição por a81796 em Sab 15 Out 2016, 14:20, editado 1 vez(es)

    Noobezinho
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 2502
    Registrado : 29/06/2012

    Re: [Resolvido]Comando SQL não faz update no campo

    Mensagem  Noobezinho em Sab 15 Out 2016, 03:15

    Olá Paulo

    Uma das regras da programação é: Nunca usar espaço em nomes de campos, variaveis, etc..., justamente
    para evitar esse tipo de dor de cabeça.

    Mas experimente colocar o nome do campo entre colchetes "[]":

    strUpdate = "Update tbl_ROMANEIOS SET DATA_DO_CRÉDITO = #27/10/2016# WHERE [DATA DA ENTREGA]>=#01/10/2016;"


    [ ]'s


    .................................................................................
    Noobezinho

    * A solução funcionou?  [Você precisa estar registrado e conectado para ver esta imagem.] 
    Agradeça e feche o tópico clicando no botão Resolvido
    Se não sabe como, veja [Você precisa estar registrado e conectado para ver este link.].

    Como anexar imagem no teu post do fórum : [Você precisa estar registrado e conectado para ver este link.]

    * Criar arquivos.zip com o Winrar - veja [Você precisa estar registrado e conectado para ver este link.].

    Atualmente estou verificando se quem está pedindo ajuda, ajudamos e não retornou.
    Se a pessoa em questão não deu retorno, não tentarei ajudar novamente .

    Alexandre Neves
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 5889
    Registrado : 05/11/2009

    Re: [Resolvido]Comando SQL não faz update no campo

    Mensagem  Alexandre Neves em Sab 15 Out 2016, 09:44

    Bom dia,
    Adeqúe o título. Escrever em maiúsculas significa gritar


    .................................................................................
    Access 2010. Mande bd que dê para testar (indique a versão). Não peça para fazer o que já tem feito. Dê todos os detalhes.
    Não coloquem entraves como senhas, esconder controlos, etc. Disponibilizem o mais limpo possível
    Só respondo a mensagens privadas, se forem de assunto privado; às outras não respondo.
    Quem trabalha e mata a fome não come o pão de ninguém; mas quem não trabalha e come, come sempre o pão de alguém. António Aleixo

    FabioPaes
    Developer
    Developer

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 2315
    Registrado : 14/08/2013

    Re: [Resolvido]Comando SQL não faz update no campo

    Mensagem  FabioPaes em Sab 15 Out 2016, 14:14

    Se o passado pelo Nobezinho nao funcionar, tente assim amigo:

    strUpdate = "UPDATE tbl_ROMANEIOS SET [DATA_DO_CRÉDITO] = #27/10/2016# WHERE [DATA DA ENTREGA]>=#01/10/2016#;"


    Veja que faltava um # na condição WHERE.


    Recomendo ainda Formatar essa Data para evitar confusão na interpretação, ex: 01/02/2016 (um de Fevereiro de 2016) será interpretado pelo VBA como sendo 02/01/2016(Dois de Janeiro de 2016).


    .................................................................................
    _____________________________________________________________________
    Achou a solução para sua dúvida? Não seja Egoísta, Compartilhe com todos!
    A dica do Colega foi útil? Agradeça!

    O importante não saber tudo, mas sim a Onde procurar!

    a81796
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 23
    Registrado : 12/08/2014

    Comando SQL não faz update no campo

    Mensagem  a81796 em Sab 15 Out 2016, 14:41

    Noobezinho,

    O que fiz foi de uma imbecilidade enorme, além de colocar nome de campo com espaço, ainda usei a palavra DATA, exclusiva do access em português.


    Fiz o que me sugeriram mas não funcionou. O sistema simplesmente está ignorando a cláusula where.

    Vocês por acaso têm alguma outra sugestão?

    Pois já estou achando que vou ter que refazer o sistema. Vou criar um campo DATA_DA_ENTREGA, rodar uma consulta para alimentá-lo com os dados do campo DATA DA ENTREGA e refazer o meu sistema, trocando o nome dos campos para evitar mais dor de cabeça mais pra frente, pois por incrível que pareça, antes de começar esse sistema eu já estava com isso em mente (campos sem espaço), pois tinha visto que isso dá problema no MYSQL.

    E mesmo assim acabei esquecendo desta regrinha básica, QUE IDIOTA QUE SOU!

    Bem que o access forçar isso, impedindo de criarmos campos assim, hehe. Mas aí já é pedir demais.




    FabioPaes
    Developer
    Developer

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 2315
    Registrado : 14/08/2013

    Re: [Resolvido]Comando SQL não faz update no campo

    Mensagem  FabioPaes em Sab 15 Out 2016, 14:52

    Calma amigo, se ainda esta a Tempo, sugiro que adeque os nomes!

    Mas posta aqui pra darmos uma Olhada!


    .................................................................................
    _____________________________________________________________________
    Achou a solução para sua dúvida? Não seja Egoísta, Compartilhe com todos!
    A dica do Colega foi útil? Agradeça!

    O importante não saber tudo, mas sim a Onde procurar!

    Noobezinho
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 2502
    Registrado : 29/06/2012

    Re: [Resolvido]Comando SQL não faz update no campo

    Mensagem  Noobezinho em Sab 15 Out 2016, 15:24

    Como o Fabio disse, vamos com calma !!

    Vamos tentar salvar o chapéu do afogado!! Razz

    Poste parte do teu aplicativo, com a tabela e onde tem a consulta em questão, para a

    gente analizar.

    [ ]'s


    .................................................................................
    Noobezinho

    * A solução funcionou?  [Você precisa estar registrado e conectado para ver esta imagem.] 
    Agradeça e feche o tópico clicando no botão Resolvido
    Se não sabe como, veja [Você precisa estar registrado e conectado para ver este link.].

    Como anexar imagem no teu post do fórum : [Você precisa estar registrado e conectado para ver este link.]

    * Criar arquivos.zip com o Winrar - veja [Você precisa estar registrado e conectado para ver este link.].

    Atualmente estou verificando se quem está pedindo ajuda, ajudamos e não retornou.
    Se a pessoa em questão não deu retorno, não tentarei ajudar novamente .

    a81796
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 23
    Registrado : 12/08/2014

    Comando SQL não faz update no campo

    Mensagem  a81796 em Sab 15 Out 2016, 15:50

    Tentei fazer uma gambiarra aqui e quase deu certo.

    Mandei criar um campo chamado DATA_TESTE e alimentei ele com o campo DATA DA ENTREGA, conforme abaixo. Ele fez direitinho, porém quando tentei alimentar o campo DATA_DO_CRÉDITO ele até fez mas ignorou a cláusula where, ou seja, alimentou o campo DATA_DO_CRÉDITO com o valor 27/10/2016 em toda a tabela.


    strUpdate_DATA_TESTE = "Update tbl_ROMANEIOS SET DATA_TESTE = [DATA DA ENTREGA];"
    strUpdate_DATA_DO_CRÉDITO = "Update tbl_ROMANEIOS SET DATA_DO_CRÉDITO=#27/10/2016# WHERE DATA_TESTE>=#13/10/2016#;"


    Estranho é que quando mando atualizar somente os campos cuja data seja igual a 13/10/2016 ele faz!
    strUpdate_DATA_DO_CRÉDITO = "Update tbl_ROMANEIOS SET DATA_DO_CRÉDITO=#27/10/2016# WHERE DATA_TESTE=#13/10/2016#;"

    O que o access tem contra o sinal de '>=' ????

    a81796
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 23
    Registrado : 12/08/2014

    Comando SQL não faz update no campo

    Mensagem  a81796 em Sab 15 Out 2016, 16:06

    strUpdate_DATA_DO_CRÉDITO = "Update tbl_ROMANEIOS SET DATA_DO_CRÉDITO=#27/10/2016# WHERE DATA_TESTE >= #01/10/2016# AND DATA_TESTE<=#15/10/2016#;"

    Com esta instrução ai ele atualizou tudo para 27/10/2016 e desconsiderou o dia 16/10/2016. Pensei! bingo, funcionou!.

    Mas minha alegria durou pouco quando percebi que ele atualizou para 27/10 inclusive as datas 24/09/2016.

    Quanto mais eu tento entender mais eu fico doido!

    Será que ele está entendendo a primeira data da faixa como 10/01/2016? É a única coisa que faz mais ou menos sentido pra mim.

    FabioPaes
    Developer
    Developer

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 2315
    Registrado : 14/08/2013

    Re: [Resolvido]Comando SQL não faz update no campo

    Mensagem  FabioPaes em Sab 15 Out 2016, 17:03

    Amigão, segue a minha dica la de cima!

    Formate esse Valor para "mm/dd/yyyy". e continue utilizando o # #.


    Última edição por FabioPaes em Sab 15 Out 2016, 17:09, editado 1 vez(es)


    .................................................................................
    _____________________________________________________________________
    Achou a solução para sua dúvida? Não seja Egoísta, Compartilhe com todos!
    A dica do Colega foi útil? Agradeça!

    O importante não saber tudo, mas sim a Onde procurar!

    Noobezinho
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 2502
    Registrado : 29/06/2012

    Re: [Resolvido]Comando SQL não faz update no campo

    Mensagem  Noobezinho em Sab 15 Out 2016, 17:08

    Paulo


    Se ainda não funfou com a dica do Fabio e como está resistente em enviar parte do teu aplicativo, uma última dica:

    Leia sobre instruções SQL na ajuda do Access e/ou Internet.

    Nela (e o VBA) é usando o formato americano para datas, ou seja,

    no VBA/SQL se for usar  o formato literal da data, use #mm/dd/aa#

    Quando se usa uma variável ou nome de campo, o Access é inteligente para converter

    internamente.


    .................................................................................
    Noobezinho

    * A solução funcionou?  [Você precisa estar registrado e conectado para ver esta imagem.] 
    Agradeça e feche o tópico clicando no botão Resolvido
    Se não sabe como, veja [Você precisa estar registrado e conectado para ver este link.].

    Como anexar imagem no teu post do fórum : [Você precisa estar registrado e conectado para ver este link.]

    * Criar arquivos.zip com o Winrar - veja [Você precisa estar registrado e conectado para ver este link.].

    Atualmente estou verificando se quem está pedindo ajuda, ajudamos e não retornou.
    Se a pessoa em questão não deu retorno, não tentarei ajudar novamente .

    a81796
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 23
    Registrado : 12/08/2014

    Comando SQL não faz update no campo

    Mensagem  a81796 em Sab 15 Out 2016, 17:43

    Noobezinho,

    Não estava relutante em enviar parte do aplicativo, mas é que como eu estava quase conseguindo resolver e sentia que era questão de detalhe, não queria a resposta "mastigada".

    Obrigado a todos que ajudaram.

    strUpdate_DATA_DO_CRÉDITO = "Update tbl_ROMANEIOS SET DATA_DO_CRÉDITO=#27/10/2016# WHERE DATA_TESTE>=#10/01/2016# and DATA_TESTE<=#10/15/2016#;"


    Fabio Paes e Noobezinho,

    Era exatamente a questão da data invertida!!!

    Valeu pessoal.

    FabioPaes
    Developer
    Developer

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 2315
    Registrado : 14/08/2013

    Re: [Resolvido]Comando SQL não faz update no campo

    Mensagem  FabioPaes em Sab 15 Out 2016, 18:11

    Viu só... Mais um aprendizado ne...

    Lembre-se qnd for Utilizar VBA+Data, sempre formate ela pois caso contrário não irá funcionar! rererererere

    Até aproxima se Deus quiser!


    .................................................................................
    _____________________________________________________________________
    Achou a solução para sua dúvida? Não seja Egoísta, Compartilhe com todos!
    A dica do Colega foi útil? Agradeça!

    O importante não saber tudo, mas sim a Onde procurar!

    Noobezinho
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 2502
    Registrado : 29/06/2012

    Re: [Resolvido]Comando SQL não faz update no campo

    Mensagem  Noobezinho em Sab 15 Out 2016, 18:41

    Ótimo Paulo

    Aqui tem outra maneira de se fazer essa instrução SQL:

    strUpdate_DATA_DO_CRÉDITO = "Update tbl_ROMANEIOS SET DATA_DO_CRÉDITO=#27/10/2016# WHERE DATA_TESTE Between #10/01/2016# and #10/15/2016#;"



    [ ]'s


    .................................................................................
    Noobezinho

    * A solução funcionou?  [Você precisa estar registrado e conectado para ver esta imagem.] 
    Agradeça e feche o tópico clicando no botão Resolvido
    Se não sabe como, veja [Você precisa estar registrado e conectado para ver este link.].

    Como anexar imagem no teu post do fórum : [Você precisa estar registrado e conectado para ver este link.]

    * Criar arquivos.zip com o Winrar - veja [Você precisa estar registrado e conectado para ver este link.].

    Atualmente estou verificando se quem está pedindo ajuda, ajudamos e não retornou.
    Se a pessoa em questão não deu retorno, não tentarei ajudar novamente .

      Data/hora atual: Qua 07 Dez 2016, 08:39