程式無任何報錯但是無法寫入資料庫

interestANd發表於2020-12-16

今日折騰了一晚上,弄不明白為什麼從前端用EL表示式傳入的資料,各方面測試都正常,允許QueryRunner的update(sql,params)方法都沒有任何的報錯,但是就是無法修改資料。
後來發現了,我有一個傳入的值帶有空格。雖然說我們平時在資料庫視覺化編輯器裡面 ,用多少個空格隔開都沒有事,但是當params的值裡面帶有空格就相當於update table set name=‘張三’ where id=’ 1234’,當找不到這個**" 1234"**這個id,自然就是不會修改成功,當然也不會報錯。
我是在一個標籤裡面設定了 *value=" u s e r . S I D " ∗ ∗ , 當 然 我 沒 有 打 那 麼 多 空 格 , 只 是 打 了 一 個 , 為 了 讓 大 家 看 清 楚 才 故 意 多 打 幾 個 。 正 確 的 應 該 是 ∗ v a l u e = " {user.SID} "**,當然我沒有打那麼多空格,只是打了一個,為了讓大家看清楚才故意多打幾個。正確的應該是*value=" user.SID"value="{user.SID}"
雙引號裡面不能帶有空格!!!!

總結

當遇到資料庫更新操作時,沒有任何報錯,也沒有任何語句錯誤的時候,注意一下是不是在篩選條件中的值裡面帶有空格了!

相關文章