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...