Erro de sintaxe no Mysql ao salvar um produto no Magento

Uma analise rápida de como identificar e corrigir o erro de sintaxe no Mysql ao salvar/cadastrar um produto na plataforma Magento.

Vamos direto ao ponto, aqui temos o erro:

SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near

Traduzindo temos um Erro de sintaxe ou violação de acesso.

Uma instalação padrão e estável do Magento jamais terá um erro desse tipo, então o que podemos deduzir é que o erro está ocorrendo em algum módulo, por meio de um observer.

Identificando o módulo

Para identificar o módulo, aconselho que seja desabilitado todos os módulos que foram instalado, um à um, testando o cadastro de produto antes de passar para o próximo módulo.

Atenção! Módulos de terceiro! Apenas!

Para fazer isso, vá em Sistema / Configurações / Avançado.

Observação!

  • Desative o compilador do Magento
  • Desative o cache
  • Verifique se a hospedagem possuí algum acelerador de PHP (ex APC Cache)
  • Faça fora do horário comercial de sua loja, evite o stress de correr contra o relógio!

Atenção!

Esse procedimento pode tirar a sua loja do ar, pois alguns módulos “mal feitos” quando desabilitados podem gerar um erro fatal!

Caso você não tenha suspeita sobre nenhum módulo, certifique-se que o usuário do banco que está configurado na loja tenha permissão total sobre o mesmo.

Verifique também se não ocorreu nenhuma migração de servidor ou manutenção em sua hospedagem!

Erro de sintaxe no Mysql em plataformas consolidadas (como o Magento) são raros, então em ultimo caso faça o rastreio até chegar a classe / função que está gerando o erro.

Dúvidas? Faça um comentário logo abaixo ou envie uma mensagem clicando aqui.

O seu endereço de e-mail não será publicado.