Font Size

Profile

Menu Style

Cpanel

25Julho2017

MS Office Gurus

Onde os desenvolvedores Office se encontram

  • Criar conta
    *
    *
    *
    *
    *
    *

    Campos marcados com asterisco (*) são obrigatórios.

Mensagem
  • Kunena is not installed or the installed Kunena version is not supported. The plug-in has now been disabled. Please install/upgrade Kunena to version 1.7 for the Kunena Discuss Plug-in to function properly.

Instrução SQL - tratando apóstrofo

Quando construimos uma instrução SQL que contenha a cláusula WHERE para uma string, nós usamos o apóstrofo ( ' ) para envelopar o texto da cláusula. Por exemplo:

SELECT * FROM TBL_ALUNOS WHERE ALUNO_NOME='ROBERT MARTIM'

O problema começa quando encontramos um nome de aluno (ou outra string qualquer) que também possui um apóstrofo. Veja o exemplo:

SELECT * FROM TBL_ALUNOS WHERE ALUNO_NOME='SUZANA D'AVILA'

O problema com o exemplo anterior é que a instrução efetivamente termina como 'SUZANA D' e a parte AVILA' passa a não ter um operador para lidar com ela, retornando um erro na instrução SQL. A solução do problema é bastante simples. Aqui, devemos utilizar a função do VBA Replace() para lidar com o erro:

SELECT * FROM TBL_ALUNOS WHERE ALUNO_NOME='" & _ 
Replace("SUZANA D'AVILA", "'", "''") & "'"

A seqüência de dois apóstrofos diz a instrução que o valor completo:

SUZANA D'AVILA