MySQL之模糊查詢特殊字符處理方式
MySQL模糊查詢特殊字符處理
模糊查詢字段輸入一個%,查出了所有數(shù)據(jù)
SELECT * FROM region_info WHERE region LIKE '%%%';
目標結(jié)果應(yīng)該返回region屬性包含%的結(jié)果集:
然而(部分結(jié)果集):

原因
MySQL有一些特殊字符需要進行轉(zhuǎn)義,模糊查詢中%、_是屬于匹配規(guī)則特殊字符,單引號'和轉(zhuǎn)義字符\也需要處理
解決辦法
需要查詢內(nèi)容進行轉(zhuǎn)義,如:
SELECT * FROM region_info WHERE region LIKE '%\%%';
正確結(jié)果集:

代碼中查詢,處理查詢內(nèi)容工具類:
public class MySQLUtil {
/**
* sql特殊字符轉(zhuǎn)義
*
* @param content 轉(zhuǎn)義內(nèi)容
* @return 轉(zhuǎn)義后內(nèi)容
*/
public static String escape(String content) {
if (content != null && !content.trim().isEmpty()) {
content = content.replaceAll("\\\\", "\\\\\\\\");
content = content.replaceAll("_", "\\\\_");
content = content.replaceAll("%", "\\\\%");
content = content.replaceAll("'", "\\\\'");
}
return content;
}
}MySQL模糊查詢時無法匹配中文的解決
問題描述
在開發(fā)中遇到了一個問題,就是在使用Text文本框當作篩選條件進行模糊查詢時,無法匹配text文本框的中文字符,但是英文和數(shù)字都可以正常篩選,于是懷疑是哪里的配置文件配置沒有加上UTF-8。
解決方案
通過查看修改兩個配置文件解決了這個問題。
1.查看數(shù)據(jù)庫連接的配置文件在你的項目下找到連接數(shù)據(jù)庫的配置文件,一般為 url=jdbc…形式,
如下文件:

在你的項目名稱,也就是?后面,查看是否有加上了UTF-8

2.找到你的tomcat 安裝位置,在安裝位置的conf文件夾下找到一個名為 server.xml的文件,打開修改。

如上圖,查看你是否加上了 URIEncoding=“UTF-8” 。
總結(jié)
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
QT連接Mysql數(shù)據(jù)庫的詳細教程(親測成功版)
被Qt連接數(shù)據(jù)庫折磨了三天之后終于連接成功了,記錄一下希望對看到的人有所幫助,下面這篇文章主要給大家介紹了關(guān)于QT連接Mysql數(shù)據(jù)庫的詳細教程,文中通過圖文介紹的非常詳細,需要的朋友可以參考下2023-05-05
MySQL安裝第四步報錯(initializing?database報錯)的圖文解決方法
這篇文章主要給大家介紹了關(guān)于MySQL安裝第四步報錯(initializing?database報錯)的解決方法,"initializing?database"?通常出現(xiàn)在安裝MySQL的過程中,表示MySQL數(shù)據(jù)庫初始化過程中遇到了問題,需要的朋友可以參考下2024-06-06
union和子查詢中order?by一起使用導(dǎo)致排序失效問題及解決
這篇文章主要介紹了union和子查詢中order?by一起使用導(dǎo)致排序失效問題及解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-12-12
MySql數(shù)據(jù)庫基礎(chǔ)之子查詢詳解
所謂子查詢是指在一個查詢中嵌套了其他的若干查詢,即在一個SELECT查詢語句的WHERE或FROM子句中包含另一個SELECT查詢語句,下面這篇文章主要給大家介紹了關(guān)于MySQL子查詢的相關(guān)資料,需要的朋友可以參考下2022-09-09
MySQL刪除binlog日志文件的三種實現(xiàn)方式
本文介紹了三種刪除MySQL binlog日志文件的方法,包含手動刪除、使用SQL命令刪除和設(shè)置自動清理,具有一定的參考價值,感興趣的可以了解一下2025-02-02
MySQL查詢優(yōu)化:用子查詢代替非主鍵連接查詢實例介紹
對多的兩張表,一般是一張表的外鍵關(guān)聯(lián)到另一個表的主鍵,接下來為大家介紹下用子查詢代替非主鍵連接查詢,感興趣的朋友可以參考下哈,希望對你有所幫助2013-04-04
老生常談mysql event事件調(diào)度器(必看篇)
下面小編就為大家?guī)硪黄仙U刴ysql event事件調(diào)度器(必看篇)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-03-03

