MySQL總是無法查到結果問題處理

2021-08-30 07:32:23 字數 645 閱讀 6528

環境:

struts1,ibatis,mysql,採用jdbc直連

報錯:登入錯誤,無法根據使用者名稱和密碼查到相應的記錄,但事實上該記錄是存在的

分析:連線資料庫肯定是成功了,就是查不出來應該查出的結果。

我連本地庫,發現ok,但是連測試庫,就是出現上面的問題。jdbc配置除了ip位址,使用者名稱和密碼,都一樣。為什麼呢?

考慮到:

登入邏輯中,傳給sql的兩個引數,乙個是使用者名稱,乙個是密碼,其中使用者名稱是中文的。

猜測:連線字串:?useunicode=true&characterencoding=utf-8

連線字串中存在&,是不是因為轉義的問題,從而導致編碼沒有生效產生了亂碼問題?

為什麼會是這樣的連線字串:

是這個問題麼:

經過驗證,將連線字串修改為?useunicode=true&characterencoding=utf-8

再連測試庫,ok,果然是這個問題。

連線本地庫,ok,沒問題。

分析,為什麼在本地庫沒有暴露問題:

因為本地庫在mysql安裝時進行了配置,設定預設字符集為utf-8。而測試庫的預設字符集是未知的。

結論:在xml檔案中&是需要轉義的。但如果將其移到properties檔案中,記得此時&是不需要轉義的。

mysql無法啟動的結果問題解決

mac 上homebrew 安裝的mysql,已經用了很長時間都沒什麼問題,今天 error the server quit without updating pid file usr local var mysql admin.pid 試了許多方法,終究還是起不來,最終查日誌,發現 usr loc...

mysql無法登入問題

症狀 error 1045 28000 access denied for user root localhost using password yes 解決辦法 修改密碼 開啟一終端一次輸入 etc init.d mysql stop mysqld safe user mysql skip gra...

mysql無法登陸問題

有的時候會遇到問題。比如我的是windows10系統,電腦上安裝了mysql,但是無論如何啟動不了,錯誤如圖所示 這種錯誤並不是自己的密碼輸入錯誤,而是因為自己的mysql服務並沒有開啟。那麼問題來了,如何開啟本地的mysql服務呢?1.如下圖所示,找到命令臺,並以管理員身份執行 2.輸入net s...