首頁 >資料庫 >mysql教程 >如何在 MySQL 中的預準備語句中使用 LIKE 通配符?

如何在 MySQL 中的預準備語句中使用 LIKE 通配符?

Barbara Streisand
Barbara Streisand原創
2024-12-14 08:48:11959瀏覽

How to Use the LIKE Wildcard with Prepared Statements in MySQL?

在準備好的語句中使用「like」通配符

當使用準備好的語句透過基於關鍵字的搜尋功能執行MySQL資料庫查詢時,「like」通配符可用於尋找部分匹配。若要將「like」通配符與預先準備語句一起使用,必須在值本身中設置,而不是在預準備語句 SQL 字串中設定。

對於前綴匹配,應將值替換為後面的關鍵字使用百分號(“%”),同時轉義值中的任何特殊字元。例如:

notes = notes
    .replace("!", "!!")
    .replace("%", "!%")
    .replace("_", "!_")
    .replace("[", "![");
PreparedStatement pstmt = con.prepareStatement(
        "SELECT * FROM analysis WHERE notes LIKE ? ESCAPE '!'");
pstmt.setString(1, notes + "%");

對於後綴匹配,該值應設定為百分號後接關鍵字。

pstmt.setString(1, "%" + notes);

對於全域匹配,應設定該值關鍵字前後各有一個百分號。

pstmt.setString(1, "%" + notes + "%");

以上是如何在 MySQL 中的預準備語句中使用 LIKE 通配符?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn