ComName是'a'b'c'「def」j Limited。mysql插入和更新查詢中的單引號和雙引號(java)
我想盡前添加\「和「,但執行的結果查詢是
"UPDATE empTable SET empId= '25', ComName = 'a'b'c'"def"j Limited where ID=1"
我看不到我的內Comname'和\是不是每一個之前存在」和」
這裏是構建列值
columnValue.replaceAll("\'", "\\" + "\'");
columnValue.replaceAll("\"", "\\" + "\"");
columnValue=("'" + columnValue + "'");
如何插入這些類型的字符串代碼?
是的,你*必須*使用PreparedStatement做這個,其他的一切只是哭出來了SQL注入攻擊。但是從中可以看出,如果你使用返回值做一些事情,你應該記住'replaceAll()'調用是唯一有用的。字符串是不可改變的,所以忽略新返回的包含新值的字符串意味着你實際上沒有在該行做任何事情。 – 2009-12-07 10:34:39
我明白返回字符串在這裏很重要,我正確使用它的問題是與報價:( – 2009-12-07 10:38:39