Apache Derby - 案例(in)敏感度

时间:2012-02-02 08:51:05

标签: derby case-insensitive

我在apache derby中搜索了一些关于不区分大小写搜索的内容。所有谷歌的结果都很老(2007年最新)。我发现在不丢失索引的情况下搜索不区分大小写是不可能的(“LOWER”不使用索引)。

这仍然是真的吗?或者有没有办法在索引的varchar / text列上进行不区分大小写的搜索?

事先提前

1 个答案:

答案 0 :(得分:3)

查看collation

创建连接器时可以使用TERRITORY_BASED:SECONDARY`,这是我能够实现此目的的唯一方法:

  

TERRITORY_BASED:SECONDARY:基于整理强度SECONDARY的地区   SECONDARY通常表示基本字母或重音符号的差异   被认为是重要的,而不考虑案例的差异   显著。

示例:

jdbc:derby:MexicanDB;create=true;collation=TERRITORY_BASED:SECONDARY

显然,在Derby中无法在函数上创建索引: https://issues.apache.org/jira/browse/DERBY-455

另一种可能性是将相同的值存储在小写列中并搜索。