Shielded operations are not required in prepared operations (and spontaneous shielding will lead to double shielding, as a result of which shielded data will be written to the database).
However, prepared PDO instructions CANNOT process all variants of queries, and sometimes you will have to insert "other" data directly into the query string, which means that you are responsible for escaping it. In particular, dynamic queries that change the names of tables and / or fields cannot be specified using prepared statements. eg.
SELECT ? FROM ? WHERE ?=?
impossible. Only values โโcan be specified using placeholders.
source share