Một truy vấn được tham số hóa về cơ bản là một truy vấn trừu tượng hóa tất cả các đầu vào. Điều này có một số tác dụng phụ tốt, như làm cho tất cả đầu vào trở nên vô hại (tức là không thể tiêm có hại) và làm cho nó nhanh hơn khi được sử dụng nhiều lần, vì nó được phân tích cú pháp và biên dịch trước, vì vậy công cụ biết cách áp dụng đầu vào đã cho. Một ví dụ trong mysql thuần túy là:
PREPARE qry FROM "INSERT INTO tbl VALUES (?)";
Câu lệnh hiện đã được biên dịch và lưu vào bộ nhớ đệm, đồng thời có thể được thực thi nhiều lần mà không cần biên dịch lại và diễn giải nó:
SET @var = "some input";
EXECUTE qry USING @var;
SET @var = "some other input";
EXECUTE qry USING @var;
Khi được sử dụng trong PHP, nó thường như thế này (rút gọn):
$stmt = prepare('INSERT INTO tbl VALUES(?)');
execute($stmt, array("some input"));
execute($stmt, array("some other input"));
execute($stmt, array("some more input"));