Sì, ma qualificato sì.
È necessario eseguire correttamente l'escape del 100% dell'input. E devi impostare correttamente i set di caratteri (se stai usando l'API C, devi chiamare mysql_set_character_set()
invece di SET NAMES
). Se ti perdi una piccola cosa, sei vulnerabile. Quindi è sì, purché tu faccia tutto bene...
E questo è il motivo per cui molte persone raccomanderanno query preparate. Non perché siano più sicuri. Ma perché sono più indulgenti...