2014-10-10 82 views
2

我有一個帶有城市列表的SQLlite數據庫。 我的autoCompleteTextView鏈接到這個數據庫,但我有一個問題。SQLlite like語句用特殊字符替換空格

有我的數據庫中有很多城市是這樣的:

聖特雷登
聖彼得斯 - 羅德
的Sint-Rijkers等等

但是很多用戶將只鍵入Sint Truiden並且不會收到任何結果。

這是我到目前爲止有:

String sql = ""; 
sql += "SELECT * FROM " + TABLE_CITIES; 
sql += " WHERE " + KEY_NAME + " LIKE '%" + searchTerm + "%'"; 

我如何調整我的SQL實現我的目標是什麼?

回答

1

一個解決方案是規範化搜索項的數據庫內容。例如,您可以在表格中添加一個包含規範化名稱的列。一些正常化例子:

  • 替換任何種類的分離器(破折號,點,多個空格)與一個空間
  • 轉換爲小寫
  • Remove accents