參數化查詢

參數化查詢 （ parameterized query 或 parameterized statement ） 是指在設計與資料庫連結並存取資料時 ， 在需要填入數值或資料的地方 ， 使用參數 （ parameter ） 來給值 ， 這個方法目前已被視爲最有效可預防SQL注入攻擊的攻擊手法的防禦方式 。 除了安全因素 ， 相比起拼接字符串的SQL語句 ， 參數化的查詢往往有性能優勢 。 因爲參數化的查詢能令不同的數據通過參數到達數據庫 ， 從而共用同一條SQL語句 。 大多數數據庫會緩存解釋SQL語句產生的字節碼而省下重複解析的開銷 。 如果採取拼接字符串的SQL語句 ， 則會由於操作數據是SQL語句的一部分而非參數的一部分 ， 而反覆大量解釋SQL語句產生不必要的開銷 。