2011-09-12 61 views
0

我創造的Android代碼肚裏如下SQL查詢字符串:選擇字符'(單引號)

SELECT strftime('%m', DATE) "MONTH", strftime('%Y', DATE) "YEAR" FROM EXPENSES group by month, year ORDER BY MONTH DESC, YEAR DESC 

我知道,如果我想獲得"我寫的只是'一個字符串中, 但如果我想獲得單個字符'

任何人都可以正確引用這個查詢引號,所以它工作正常?

回答

3

你的問題似乎有點困惑,你需要逃脫什麼時候。這應該覆蓋它:

  • 要在SQL中轉義單引號,您只需將其加倍即可。

    'an escaped single quote '' like that' 
    
  • 在Java中,您只需在外部使用雙引號。

    "a single quote ' like that" 
    
  • 逃脫雙引號在Java中,使用前導斜槓\像這樣:

    "SELECT strftime('%m', DATE) \"MONTH\", strftime('%Y', DATE) \"YEAR\" FROM EXPENSES group by month, year ORDER BY MONTH DESC, YEAR DESC" 
    
+0

謝謝,那正是我一直在尋找。 Hovewer我認爲在java中變成了「 –

+0

和SQL Injected :) – Woot4Moo