MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração


Participe do fórum, é rápido e fácil

MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração

MaximoAccess

Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

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


2 participantes

    UPDATE com erro de sintaxe

    avatar
    Moma
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Feminino
    Localização : Brasil
    Mensagens : 11
    Registrado : 22/09/2016

    UPDATE com erro de sintaxe Empty UPDATE com erro de sintaxe

    Mensagem  Moma 22/9/2016, 13:24

    Pessoal, bom dia.

    Sou nova no fórum, estou fazendo um update em um formulário, porém sempre dá erro de sintaxe na instrução UPDATE.

    Segue meu código abaixo, se alguém puder me ajudar.

    Sub AtualizaBase()

       SU_ConectaBD
       
       SQL = "UPDATE TB_PortaUnica"
       SQL = SQL & " SET Tipo = '" & FormChamadas.cbTipo.text & "',"
       SQL = SQL & " SET Cod_Assinante = '" & FormChamadas.txtCodAssinante.text & "',"
       SQL = SQL & " SET ID_Fibra = '" & FormChamadas.txtidfibra.text & " ',"
       SQL = SQL & " SET Contratada = '" & FormChamadas.CbContratada.text & "',"
       SQL = SQL & " SET Data_Solicitação = '" & FormChamadas.txtdata.text & "',"
       SQL = SQL & " SET Nome_Solicitante = '" & FormChamadas.txtNomeSolicitante.text & "',"
       SQL = SQL & " SET Área_Solicitante = '" & FormChamadas.txtAreaSolicitante.text & "',"
       SQL = SQL & " SET Email = '" & FormChamadas.txtEmailsolicitante.text & "',"
       SQL = SQL & " SET Email_Cópia = '" & FormChamadas.txtEmailcopiasolic.text & "',"
       SQL = SQL & " SET Assunto_Email = '" & FormChamadas.txtAssuntoEmailsolic.text & "',"
       SQL = SQL & " SET Natureza_Serviço = '" & FormChamadas.txtNaturezaServic.text & "',"
       SQL = SQL & " SET Motivo_Solicitado = '" & FormChamadas.txtMotivoSolic.text & "',"
       SQL = SQL & " SET Status_Ordem = '" & FormChamadas.cbStatusOrdem.text & "',"
       SQL = SQL & " SET Sistema = '" & FormChamadas.txtsistema.text & "',"
       SQL = SQL & " SET Data_Agendamento = '" & FormChamadas.txtdataagendamento.text & "',"
       SQL = SQL & " SET Período = '" & FormChamadas.cbPeriodo.text & "',"
       SQL = SQL & " SET Nome_Cliente = '" & FormChamadas.txtNomeCliente.text & "',"
       SQL = SQL & " SET Celular = '" & FormChamadas.txtCelularCliente.text & "',"
       SQL = SQL & " SET Telefone = '" & FormChamadas.txtTelefoneclie.text & "',"
       SQL = SQL & " SET Observação = '" & FormChamadas.txtObservacao.text & "',"
       SQL = SQL & " SET Matrícula2 = '" & FormChamadas.txtMatricula.text & "',"
       SQL = SQL & " SET Nome2 = '" & FormChamadas.TxtNomeColaborador.text & "',"
       SQL = SQL & " Where Registro = '" & FormChamadas.txtRegistro.text & "';"
       
       
       mConn.Execute SQL
           'ImportaParaBaseMatricula
       
       Call SU_DesconectaBD
       Exit Sub

    erro:
       Call SU_DesconectaBD
       CodDescrErroImp = Err.Description
       MsgBox CodDescrErroImp
       End Sub
    FabioPaes
    FabioPaes
    Maximo VIP
    Maximo VIP


    Respeito às regras : Respeito às Regras 100%

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

    UPDATE com erro de sintaxe Empty Re: UPDATE com erro de sintaxe

    Mensagem  FabioPaes 22/9/2016, 14:28

    Seja bem vinda ao Forum!

    Vamos la...

    SET .... So vem uma vez na instrução...


    SQL = SQL & " SET Tipo = '" & FormChamadas.cbTipo.text & "'," & _
    SQL = SQL & " Cod_Assinante = '" & FormChamadas.txtCodAssinante.text & "'," & _


    E para dar quebra de Linha coloque ( & _)  Espaço & espaço _


    Quando o Campo é do Tipo Texto fica entre

    '" & camo & "'


    Quando For diferente de Texto fica so entre Aspas  

    " & camo & "



    Campos com caracter especial ou com espaço devem ficar entre Colchete [].
    Ex: Período ficará assim: [Período]
    Área_Solicitante Ficara: [Área_Solicitante]


    Existe outro modelo para criar esse UPDATE, que fica menos embaraçada a instrução.

    ex:

    SQL ="UPRATE NomeTabela (CampoN1, CampoTexto2) Values(" & valorCampoN1 & ", '" & ValorCampo2 &"');"

    Entre parenteses separados por , ficam os nomes dos campos da tabela (campo1,campo2,campo3)
    Values (Os valores para os campos na mesma ordem da lista dos campos)

    Obedecendo as mesmas regras citadas a cima!


    .................................................................................
    _____________________________________________________________________
    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!
    avatar
    Moma
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Feminino
    Localização : Brasil
    Mensagens : 11
    Registrado : 22/09/2016

    UPDATE com erro de sintaxe Empty Re: UPDATE com erro de sintaxe

    Mensagem  Moma 22/9/2016, 14:57

    Oi Fabio,

    Do jeito que falou pra fazer está dando o erro de "Tipos Incompatíveis"

    O código eu coloquei assim:

    Sub AtualizaBase()

    SU_ConectaBD
    SQL = "UPDATE TB_PortaUnica"
    SQL = SQL & " SET Tipo = '" & FormChamadas.cbTipo.text & "'," & _
    SQL = SQL & " Cod_Assinante = '" & FormChamadas.txtCodAssinante.text & "'," & _
    SQL = SQL & " ID_Fibra = '" & FormChamadas.txtidfibra.text & " '," & _
    SQL = SQL & " Contratada = '" & FormChamadas.CbContratada.text & "'," & _
    SQL = SQL & " [Data_Solicitação] = '" & FormChamadas.txtdata.text & "'," & _
    SQL = SQL & " Nome_Solicitante = '" & FormChamadas.txtNomeSolicitante.text & "'," & _
    SQL = SQL & " Área_Solicitante = '" & FormChamadas.txtAreaSolicitante.text & "'," & _
    SQL = SQL & " Email = '" & FormChamadas.txtEmailsolicitante.text & "'," & _
    SQL = SQL & " [Email_Cópia] = '" & FormChamadas.txtEmailcopiasolic.text & "'," & _
    SQL = SQL & " Assunto_Email = '" & FormChamadas.txtAssuntoEmailsolic.text & "'," & _
    SQL = SQL & " [Natureza_Serviço] = '" & FormChamadas.txtNaturezaServic.text & "'," & _
    SQL = SQL & " Motivo_Solicitado = '" & FormChamadas.txtMotivoSolic.text & "'," & _
    SQL = SQL & " Status_Ordem = '" & FormChamadas.cbStatusOrdem.text & "'," & _
    SQL = SQL & " Sistema = '" & FormChamadas.txtsistema.text & "'," & _
    SQL = SQL & " Data_Agendamento = '" & FormChamadas.txtdataagendamento.text & "'," & _
    SQL = SQL & " [Período] = '" & FormChamadas.cbPeriodo.text & "'," & _
    SQL = SQL & " Nome_Cliente = '" & FormChamadas.txtNomeCliente.text & "'," & _
    SQL = SQL & " Celular = '" & FormChamadas.txtCelularCliente.text & "'," & _
    SQL = SQL & " Telefone = '" & FormChamadas.txtTelefoneclie.text & "'," & _
    SQL = SQL & " [Observação] = '" & FormChamadas.txtObservacao.text & "'," & _
    SQL = SQL & " [Matrícula2] = '7" & FormChamadas.txtMatricula.text & "'," & _
    SQL = SQL & " Nome2 = '" & FormChamadas.TxtNomeColaborador.text & "'"
    SQL = SQL & " Where Registro = '" & FormChamadas.txtRegistro.text & "'"


    mConn.Execute SQL
    'ImportaParaBaseMatricula

    Call SU_DesconectaBD
    Exit Sub

    erro:
    Call SU_DesconectaBD
    CodDescrErroImp = Err.Description
    MsgBox CodDescrErroImp
    End Sub
    FabioPaes
    FabioPaes
    Maximo VIP
    Maximo VIP


    Respeito às regras : Respeito às Regras 100%

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

    UPDATE com erro de sintaxe Empty Re: UPDATE com erro de sintaxe

    Mensagem  FabioPaes 22/9/2016, 15:26

    SQL = "UPDATE TB_PortaUnica"
    SQL = SQL & " SET Tipo = '" & FormChamadas.cbTipo.text & "'," & _
    SQL = SQL & " Cod_Assinante = '" & FormChamadas.txtCodAssinante.text & "'," & _
    SQL = SQL & " ID_Fibra = '" & FormChamadas.txtidfibra.text & " '," & _
    SQL = SQL & " Contratada = '" & FormChamadas.CbContratada.text & "'," & _
    SQL = SQL & " [Data_Solicitação] = '" & FormChamadas.txtdata.text & "'," & _
    SQL = SQL & " Nome_Solicitante = '" & FormChamadas.txtNomeSolicitante.text & "'," & _
    SQL = SQL & " Área_Solicitante = '" & FormChamadas.txtAreaSolicitante.text & "'," & _
    SQL = SQL & " Email = '" & FormChamadas.txtEmailsolicitante.text & "'," & _
    SQL = SQL & " [Email_Cópia] = '" & FormChamadas.txtEmailcopiasolic.text & "'," & _
    SQL = SQL & " Assunto_Email = '" & FormChamadas.txtAssuntoEmailsolic.text & "'," & _
    SQL = SQL & " [Natureza_Serviço] = '" & FormChamadas.txtNaturezaServic.text & "'," & _
    SQL = SQL & " Motivo_Solicitado = '" & FormChamadas.txtMotivoSolic.text & "'," & _
    SQL = SQL & " Status_Ordem = '" & FormChamadas.cbStatusOrdem.text & "'," & _
    SQL = SQL & " Sistema = '" & FormChamadas.txtsistema.text & "'," & _
    SQL = SQL & " Data_Agendamento = '" & FormChamadas.txtdataagendamento.text & "'," & _
    SQL = SQL & " [Período] = '" & FormChamadas.cbPeriodo.text & "'," & _
    SQL = SQL & " Nome_Cliente = '" & FormChamadas.txtNomeCliente.text & "'," & _
    SQL = SQL & " Celular = '" & FormChamadas.txtCelularCliente.text & "'," & _
    SQL = SQL & " Telefone = '" & FormChamadas.txtTelefoneclie.text & "'," & _
    SQL = SQL & " [Observação] = '" & FormChamadas.txtObservacao.text & "'," & _
    SQL = SQL & " [Matrícula2] = '7" & FormChamadas.txtMatricula.text & "'," & _
    SQL = SQL & " Nome2 = '" & FormChamadas.TxtNomeColaborador.text & "'"
    SQL = SQL & " Where Registro = '" & FormChamadas.txtRegistro.text & "'"


    Observe o Campo destacado que deve ficar entre [].
    Mas tipos incompatíveis significa que esta passando para o Campo da tabela um Valor Texto (conforme sua instrução) e o campo da tabela esta com outro formato, como por exemplo NUMERO.

    Observe a mensagem anterior...


    .................................................................................
    _____________________________________________________________________
    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!
    FabioPaes
    FabioPaes
    Maximo VIP
    Maximo VIP


    Respeito às regras : Respeito às Regras 100%

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

    UPDATE com erro de sintaxe Empty Re: UPDATE com erro de sintaxe

    Mensagem  FabioPaes 22/9/2016, 15:32

    Outra coisa, que achei estranho e que vc esta passando o Nome do Formulario.campo.Text...

    Acredito que o Correto seria: Forms!NomeFormulario!NomeCampo.Text <-- Isso partindo da Ideia de que a instrução seria executada em um botão que nao esta no mesmo formulario com os Valore dos Campos...

    Pois se os Valores dos Campos estiverem no mesmo formulário que rodará a Instrução SQL basta colocar: Me.NomeDoCampo


    .................................................................................
    _____________________________________________________________________
    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!
    avatar
    Moma
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Feminino
    Localização : Brasil
    Mensagens : 11
    Registrado : 22/09/2016

    UPDATE com erro de sintaxe Empty Re: UPDATE com erro de sintaxe

    Mensagem  Moma 22/9/2016, 18:52

    Fabio,

    Com exceção do campo registro, todos os outros estão definidos como texto, mas mesmo assim continua dando o erro de dado incompatíveis.
    FabioPaes
    FabioPaes
    Maximo VIP
    Maximo VIP


    Respeito às regras : Respeito às Regras 100%

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

    UPDATE com erro de sintaxe Empty Re: UPDATE com erro de sintaxe

    Mensagem  FabioPaes 22/9/2016, 19:43

    Posta aqui pra que possa dar uma olhada favor...

    Obs: Campo Data tambem fica somente entre "..." (Data_Agendamento e Data_Solicitação) <---


    .................................................................................
    _____________________________________________________________________
    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!
    avatar
    Moma
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Feminino
    Localização : Brasil
    Mensagens : 11
    Registrado : 22/09/2016

    UPDATE com erro de sintaxe Empty Re: UPDATE com erro de sintaxe

    Mensagem  Moma 22/9/2016, 19:45

    Esse é o arquivo onde está o form...precisa do banco tbm?
    Anexos
    UPDATE com erro de sintaxe AttachmentORDENS_SERVICO_PORTAUNICA_v3.xlsm
    Você não tem permissão para fazer download dos arquivos anexados.
    (209 Kb) Baixado 3 vez(es)
    FabioPaes
    FabioPaes
    Maximo VIP
    Maximo VIP


    Respeito às regras : Respeito às Regras 100%

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

    UPDATE com erro de sintaxe Empty Re: UPDATE com erro de sintaxe

    Mensagem  FabioPaes 22/9/2016, 20:07

    Vish! É excel... Entendo quase nada de Excel o...

    Mas reveja os campos da Tabela, pois um deles esta recebendo Texto e ele nao é texto...

    Remova tabem o .Text desses campos que nao sao Texto...


    .................................................................................
    _____________________________________________________________________
    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!

    Conteúdo patrocinado


    UPDATE com erro de sintaxe Empty Re: UPDATE com erro de sintaxe

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 29/4/2024, 04:32