2010-11-11 50 views
1

中的語言設置的SQL查詢支持有人可以告訴我是否有辦法編寫SQL查詢來獲取電話簿中的聯繫人姓名列表 ,該姓名的電話號碼與英文姓名 的手機語言設置爲西班牙語。基於android

例如,如果我寫了一個查詢來獲取聯繫人的姓氏與 「爸爸」結束,但對於一些聯繫人姓「爸爸」將被存儲爲 「爸爸」西班牙語。 所以,我寫的匹配lastname =「dad」的查詢不會工作 ,因爲它們是不同的字符。在查詢語言翻譯時,有沒有辦法在SQL中使用 ?

提供您的幫助!

回答

0

我可以看到這個工作的唯一方法是如果你將參數傳遞給SQL搜索。然後,在將這些參數傳遞給查詢之前,先採用這些參數並通過某種翻譯服務(英語 - >西班牙語)運行它們。

0

您可能會考慮將一些字符串放入localized XML files。通過這種方式,你可能只是這樣做:

String dad = getString(R.string.dad); 

然後,只需使用dad變量來構建SQL查詢。每種語言都有不同的strings.xml文件(在res/values-xx/strings.xml下,其中「xx」是兩個字母的語言名稱),Android會根據用戶的語言設置自動拉取字符串。

+0

此解決方案再次有一個限制。如果我有兩個不同的聯繫人說**亞歷克斯的爸爸**和**阮帕帕**。然後它不會從查詢中找到兩個聯繫人。 – Nikil 2010-11-12 09:14:53

+0

的確如此,但如果用戶的主要語言是西班牙語,那麼他們不太可能同時使用這兩種語言。只有其他的選擇我可以想到的就是爲每個構建一個String [](即'dad [] = {dad,papa,...};'),並用一堆OR語句構建SQL查詢例如'for(String d:dad){query + =「OR」+ d};')或者其他。 – kcoppock 2010-11-12 13:22:00