in reply to composing and debugging MySql placeholders

Look at DBIx-Log4perl or DBIx-LogAny for a way to get placeholders from the statement handle e.g., ParamValues and ParamTypes. Both of those modules can log SQL and placeholders. Look at DBI callbacks and you can intercept the execute and do methods.

If you actually want to recreate the SQL with the placeholders in place that is slightly more difficult but not impossible