Skip to content
Free public beta until December 4, 2026: every course is open, no card needed. After that, the first chapter of each course stays free and full access is a one-time $39 ($19 for up to 100 founding members chosen for helpful feedback). Your progress is kept. How the beta works

prepared statement

A query sent with placeholders, with the values sent separately.

A prepared statement is parsed once with placeholders (? or $1), and values are bound separately, so they can never change the query's structure.

Loading interactive…

Examples

  • sqlx::query("SELECT name FROM tools WHERE name = ?").bind(name) sends the value separately, so x' OR '1'='1 matches no rows instead of every row.

Read the full section →