sql >> Base de Datos >  >> RDS >> Oracle

ORA-00911:Carácter no válido a través de ODBC, Adhoc SQL - ¿dentro de los comentarios?

Si un comentario incluye la palabra completa end entonces el controlador Oracle (o el servidor) parece estar interpretando esto mal. Si elimina el end palabra dentro del comentario, la sentencia se ejecuta correctamente.

Creo que esto se debe a que no espera un punto y coma después de experimentar una directiva de "fin" (aunque no debería analizar un comentario).

La siguiente instrucción se ejecuta sin problemas y devuelve 7.

/* end */\nSELECT 7 FROM MyTable 

La siguiente declaración plantea ORA-00911

/* end */\nSELECT 6 FROM MyTable;

La siguiente instrucción devuelve 5

/**/\nSELECT 5 FROM MyTable;

Es probable que Oracle analice el comentario porque así es como aplica las 'sugerencias' de optimización/operación de combinación.