Utilisation du caractère générique "J'aime" avec des instructions préparées
Lors de l'utilisation d'instructions préparées pour exécuter des requêtes de base de données MySQL avec une fonctionnalité de recherche basée sur un mot-clé , le caractère générique "J'aime" peut être utilisé pour rechercher des correspondances partielles. Pour utiliser le caractère générique "J'aime" avec une instruction préparée, il doit être défini dans la valeur elle-même, plutôt que dans la chaîne SQL de l'instruction préparée.
Pour une correspondance de préfixe, la valeur doit être remplacée par le mot-clé suivi. par un signe de pourcentage ("%"), tout en échappant à tout caractère spécial dans la valeur. Par exemple :
notes = notes .replace("!", "!!") .replace("%", "!%") .replace("_", "!_") .replace("[", "!["); PreparedStatement pstmt = con.prepareStatement( "SELECT * FROM analysis WHERE notes LIKE ? ESCAPE '!'"); pstmt.setString(1, notes + "%");
Pour une correspondance de suffixe, la valeur doit être définie avec un signe de pourcentage suivi du mot-clé.
pstmt.setString(1, "%" + notes);
Pour une correspondance globale, la valeur doit être définie avec un signe de pourcentage avant et après le mot-clé.
pstmt.setString(1, "%" + notes + "%");
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!