使用NO_BACKSLASH_ESCAPES 模式轉義MySQL 中的文字百分比和下劃線字元
當MySQL 在NO_BACKSLASH_ESCAP 百分比運行時運行時,轉義文字模式的標準方法(%) 和底線(_)字元使用反斜線 () 字元不適用。本文提供了專門在此模式下轉義這些字符的替代方法。
問題
考慮以下範例:MySQL 表中的欄位包含諸如「5」之類的值% 折扣」和「50% 折扣」。以下使用標準反斜線轉義字元的LIKE 查詢在NO_BACKSLASH_ESCAPES模式下不起作用:
SELECT * FROM mytable WHERE mycol LIKE '5\% off'
解決方案
在 NO_BACKSLASH_ESCAPES模式下,您可以轉義百分比和底線字元使用不同的轉義序列。替代解決方案
SELECT * FROM mytable WHERE mycol LIKE '5\% off' ESCAPE '\'
或者,您可以使用不同的字元進行轉義,例如管道(|) 字元。模式設定如何,下面的查詢都會起作用:
透過使用這些技術,即使在NO_BACKSLASH_ESCAPES 模式下,您也可以有效地轉義MySQL 查詢中的文字百分比和下劃線字元。 🎜>以上是如何在MySQL的NO_BACKSLASH_ESCAPES模式下轉義百分比和底線字元?的詳細內容。更多資訊請關注PHP中文網其他相關文章!