2010-07-29 86 views
1

是否有任何理由在速度和安全性方面使用其他語言? 謝謝!real_escape_string與準備好的語句

+0

相關:http://stackoverflow.com/questions/3101307/mysqli-prepared-statements-and-mysqli-real-escape-string – 2010-07-29 02:01:50

回答

1

速度:

  • 當您使用綁定參數,你可以重複使用相同的查詢和查詢計劃,只是改變的參數。當您從字符串構建查詢時,數據庫必須重新解析語句。
  • 使用綁定參數,SQL解析器也有很少的工作要做。參數不會轉義,因此解析更簡單。

安全:

  • 在我看來,這是很容易記住使用比參數記住逃脫字符串。
+0

非常符合安全的要求。很容易錯過轉義字符串,特別是當有些值不希望像數值那樣轉義時。使用準備好的語句更安全,更容易,而且您不必擔心忘記任何事情。另外,當它沒有穿插一堆串聯運算符時,它更容易在代碼中讀取查詢。 – Kibbee 2010-07-29 02:08:28