首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用Hibernate中的排序规则处理法语字符集

如何使用Hibernate中的排序规则处理法语字符集
EN

Stack Overflow用户
提问于 2014-07-18 08:13:00
回答 1查看 1.6K关注 0票数 0

嗨,当我使用以下查询时,我试图在一个列名为per_va_first_name的视图上使用排序规则:

代码语言:javascript
复制
SELECT *
 FROM person_view
 WHERE NLSSORT(per_va_first_name, 'NLS_SORT = FRENCH_AI') = NLSSORT('mickaël', 'NLS_SORT  =FRENCH_AI')

我知道错误了

ORA-12702: SQL函数中使用的无效NLS参数字符串

我是甲骨文和这个nlssort的新手。有人能帮我指出我的错误吗?同时,我还想使用Hibernate for Java中的排序规则。同样的法式煤焦。

编辑:

当我在sql中使用这些命令时

代码语言:javascript
复制
alter session set nls_sort=French_AI;
alter session set nls_comp=linguistic;

在执行此查询时,我将获得所需的输出。

代码语言:javascript
复制
SELECT * FROM v_myuser_search_test_ea4 where per_va_first_name like 'Mickaël%'

如何在Hibernate中做到这一点?我是否可以在French_AI中添加“CI”以使其成为“French_AI_CI”

EN

回答 1

Stack Overflow用户

发布于 2014-07-18 09:13:57

根据在01/server.112/e26088/functions113.htm#SQLRF51562上找到的Oracle文档

您可以将查询更改为

代码语言:javascript
复制
SELECT *
FROM person_view
ORDER BY NLSORT(per_va_first_name, 'NLS_SORT = FRENCH_AI_CI')

Hibernate应该理解它,但是您已经失去了数据库的可移植性,因为这是Oracle特有的函数。

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24820218

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档