2010-03-02 64 views
0

我有一個帶有一些Unicode值的PostgreSQL數據庫。例如Marathi的「vaishali」。我想發起一個查詢SELECT * FROM table WHERE name LIKE vaishali(我在Marathi輸入「vaishali」,所以我首先在我的編程中轉換爲unicode)。但它什麼都不匹配。爲什麼?無法使用LIKE從PostgreSQL中選擇Unicode數據

回答

1

有此問題的兩個可能的原因:

  1. 的JDBC驅動程序沒有指示使用UTF-8。這實際上是一個錯誤,因爲它應該自動從數據庫元數據中提取正確的字符編碼。據我的經驗,PostgreSQL JDBC驅動程序在這方面一直做得很好。

  2. SQL查詢實際上是錯誤地構造/制定的。您發佈的內容在語法上已經失效。請發佈實際的代碼和查詢。此外,您似乎堅持認爲它只發生在LIKE查詢中。如何查詢正常的WHERE name = 'foo'