由于用户可能来自不同的国家,不同的操作系统,他们输入的字符集重音字符可能编码为windows-1252,iso-8859-1,甚至是iso-8859-X,windows-125X。我使用的是Perl,我的索引服务器是Solr8,所有数据都在utf8中。如果源字符集已知,我可以使用decode+encode来转换它,但是我如何将未知的重音转换为utf8?如何在Perl中检测源重音字符的字符集? use utf8;encode("utf8
我知道数据库字符集(NLS_CHARACTERSET in select * from v$nls_parameters;)和客户端字符集(客户端环境设置NLS_LANG)是如何交互的。然而,我无法了解的是,对于已建立的会话,如何或是否可以确定Oracle认为当前客户端字符集是什么。
这有可能吗?注意:SELECT * FROM NLS_SESSION_PARAMETERS;不包括字符集(在10g2上)。数据库应用程序*想要“询问”Oracle (而不是它的操作系统环境