2009-10-12 6 views
1

Je cherche l'annotation Hibernate ou .hbm.xml qui me permet de spécifier une colonne de table en tant que chaîne insensible à la casse dans unicode/utf-8/locale-manière indépendante qui fonctionne sur plusieurs moteurs de base de données.Hibernate insensible à la casse utf-8/unicode qui fonctionne sur plusieurs SGBD

Y a-t-il une telle chose?

Pour que je puisse faire une requête en utilisant Restrictions.eq("column_name", "search_string") efficacement.

Répondre

0

Non, il n'y a pas de mappage ou d'annotation comme ça. Vos options sont les suivantes:

  1. Gérez cette opération en spécifiant le classement approprié au niveau de la base de données.
  2. Utilisez la fonction lower() définie pour la majorité des (tous?) Dialectes.
  3. Si vous souhaitez utiliser des critères uniquement, utilisez Restrictions.ilike() pour une comparaison insensible à la casse. Il utilise actuellement lower() en interne.
Questions connexes