datos pycharm code-inspection

datos - ¿Cómo hago para que PyCharm reconozca los marcadores de posición en las declaraciones SQL?



pycharm base de datos (2)

¿Es este SQL en una consola SQL, o en una cadena en un script de Python? Tuve este mismo problema y lo resolví marcando la casilla que se encuentra arriba de la lista de patrones, con la etiqueta "Habilitar en literales de cadena con inyección SQL". Si está haciendo esto en una ventana de la consola SQL, marque la primera casilla.

Como notas de @LazyOne, vaya a Settings/Preferences > Tools > Database > User Parameters y verá dos casillas de verificación en la parte superior:
Enable in console and SQL files
Enable in string literals with SQL injection

Si bien puede agregar sus propios patrones personalizados, creo que el patrón que coincide con la sintaxis de este parámetro (para mí, los parámetros para psycopg2 para uso en Postgres) está fuera de la caja en Pycharm, el último en la lista.

Vea aquí para referencia:
https://www.jetbrains.com/help/pycharm/2016.1/user-parameters.html

Estoy usando PyCharm y tengo un error en esta declaración SQL:

SELECT * FROM table WHERE id= %(id)s

La inspección de sintaxis de código dice:

<expression> expected, got ''%''

¿Hay alguna manera de deshabilitar este mensaje de error? En otras palabras, ¿cómo hago para que PyCharm reconozca los marcadores de posición en las declaraciones SQL?

Editar

Aquí está mi solución:

Para %(id)s %s debes tener %/((/w+)/)s %s en Settings/Preferences | Tools | Database | User parameters Settings/Preferences | Tools | Database | User parameters Settings/Preferences | Tools | Database | User parameters y seleccione All languages no solo SQL


Además de la respuesta de @Nate (el regex incorporado %/((/w+)/)s funciona para PostgreSQL), he logrado obtener este trabajo solo al reordenar los patrones y mover el regex objetivo a la parte superior de la lista .

También se podría intentar deshabilitar otras reglas y ver si eso ayuda.