En detalle
Surge cuando un programa construye una consulta pegando la entrada del usuario en una cadena, de modo que una entrada como ' OR '1'='1 cambia la lógica de la consulta. La solución son las consultas parametrizadas (sentencias preparadas), que mantienen los datos separados del comando. Escapar a mano es propenso a errores. Las cuentas de base de datos con privilegios mínimos limitan el daño.