HQL hiçbir ilike
eşdeğer işlevselliği yoktur. Konstantin'in zaten suggestion'da işaret ettiği gibi, en iyi seçiminiz tune the database connection ve için JIRA: DERBY-1748: Global case insensitive setting'da açıklandığı şekilde ayarlanmıştır. Tüm eşitliklerin (=
) ve like
s nin büyük/küçük harf duyarlı olamayacağını dikkate alın. Bu biraz fazla ileri gidebilir ve özel durumunuza uygun olmayabilir.
Bunu ele almanın başka bir yolu, işlev tabanlı dizinler oluşturmak (Derby onları destekliyorsa) ve HQL'nizi like
ve lower
'u bu şekilde birleştirmek için ayarlar.
Query q = session.createQuery("... WHERE lower(entity.field) like ?)");
q.setString(0, '%' + variable.toLowerCase() + '%');
Derby FBI (ı değil mi düşünüyorum), ayrıca düşük değerlere ve endeks onları birlikte tetik dolu sütunlar oluşturabilir desteklemiyorsa
.
UPDATE Diğer JIRA: JIRA-481: implement SQL generated columns'da açıklandığı gibi türetilmiş/otomatik olarak oluşturulmuş sütunları tanımlamak mümkün görünmektedir.
** ** gibi ** derby veritabanında HQL çalışmayacak mı? – ManuPK
gibi * will * çalışacak, ancak büyük/küçük harfe duyarlı – gotch4