Son plantillas de predicado la misma cosa como declaraciones preparadas?
-
20-09-2019 - |
Pregunta
Por ejemplo, si tuviera esta cadena de formato predicado, habría que tener los mismos beneficios de seguridad como comandos preparados en la oferta de SQL?
@"name == $LAST_NAME"
No estoy seguro de si esto es una sustitución estúpida llanura que todavía permite la inyección mal "SQL" a los datos básicos, o si esto es tan bueno como declaraciones preparadas conocidos a partir de tecnologías modernas db?
Solución
No está ejecutando en un servidor y cualquier usuario va a conseguir un acceso completo al archivo de SQLite todos modos por lo que no hay seguridad allí para subvertir.
Además, este es un predicado y no es una instrucción SQL almacenada. Cuando la aplicación se ejecuta el predicado, Datos Básicos hará la traducción a SQL, que no almacena esa traducción.
En resumen, nada que temer aquí.