看板 AndroidDev 關於我們 聯絡資訊
大家好,最近在透過做 ContentProvider 進行 db 存取的時候遇到了一些問題 我想問的是,像是 insert , update 這種透過有 ContentValues 來建立資料的 會不會自動幫我 escape ? 還是說只有透過 SQLiteQueryBuilder 所建立出來的 query 才會幫我 escape ? 我試著使用 DatabaseUtil.sqlEscapeString 來做,不過我發現 DatabaseUtil.sqlEscapeString("你好") , 會得到 '你好' 我原本以為是 DatabaseUtil.sqlEscapeString("你好") => 你好 DatabaseUtil.sqlEscapeString("你'好") => 你''好 這個造成我不小的困擾 orz.... 我現在只要先確定一下,假設我有一個字串 str 內的文字有包含單引號 如: 你'好 那麼我這樣 : ContentValues values=new ContentValues(); values.put("data",str); db.insert( tableName , nullHack , values); 會不會出錯? 如果不會出錯,是因為在呼叫 insert 的時候會自動幫我把 ContentValues 中的文字 escape 嗎 ? 感謝大家~ -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 36.238.222.100 ※ 文章網址: https://www.ptt.cc/bbs/AndroidDev/M.1448267870.A.E77.html