轉義 MySQL 通配符:澄清誤解
MySQL 使用特定字元作為通配符來促進查詢中的模式匹配。然而,在某些情況下,了解轉義這些通配符的微妙之處以確保 SQL 語句的準確和一致性至關重要。
對字串文字轉義% 和_
相反根據最初的假設,在將MySQL 通配符% 和_ 分配給時,不需要使用addcslashes 轉義它們常規字串文字。 mysql_real_escape_string 函數足以滿足此目的。
LIKE 表達式中轉義的細微差別
為 LIKE 語句準備字串時,需要更細緻的方法。在 LIKE 表達式中,% 和 _ 以及轉義字元本身都變成特殊字元。為了避免誤解,必須執行兩層轉義:
解決明顯的不一致
星號(", '')從資料庫返回時出現未轉義的原因是MySQL自動篩選這是與ANSI SQL 的偏差,ANSI SQL 規定不應使用% 和_ 以外的字元。 . 指定替代轉義字元這會覆寫預設行為並消除對MySQL 與ANSI SQL 偏差的依賴。
以上是如何正確轉義 MySQL 通配符:何時以及為何?的詳細內容。更多資訊請關注PHP中文網其他相關文章!