Pl sql将国家字符转换为unicode
我尝试将丹麦国家字符转换为unicode。plsql中是否有函数或plsql函数的参数可以帮助我?我尝试从dual中选择convert('198,æ:,Ø:,Ø:,å:','AL32UTF8')代码>但它没有帮助。作为一种变通方法,我在代码中使用了类似的东西Pl sql将国家字符转换为unicode,unicode,plsql,Unicode,Plsql,我尝试将丹麦国家字符转换为unicode。plsql中是否有函数或plsql函数的参数可以帮助我?我尝试从dual中选择convert('198,æ:,Ø:,Ø:,å:','AL32UTF8')但它没有帮助。作为一种变通方法,我在代码中使用了类似的东西 w_temp := replace('Æ, æ:,Ø, ø:,Å, å:','å','\u00E5'); w_temp := replace(w_temp,'Å','\u00C5'); w_temp := replace(w_temp,'æ','
w_temp := replace('Æ, æ:,Ø, ø:,Å, å:','å','\u00E5');
w_temp := replace(w_temp,'Å','\u00C5');
w_temp := replace(w_temp,'æ','\u00E6');
w_temp := replace(w_temp,'Æ','\u00C6');
w_temp := replace(w_temp,'ø','\u00F8');
w_temp := replace(w_temp,'Ø','\u00D8');
但这种方法就像是在胡闹。我的代码不适用于任何其他国家的字符-您有什么建议吗?我不确定全局是什么,但假设您当前的数据库中有支持您的变音符号的单个字符集,我宁愿使用完全不同的方法:
- 导出数据库和现有字符集所需的数据
- 使用unicode字符集重新创建数据库
- (很可能)更改te定义并使用CHAR而不是字节语义安装所有数据库对象
- 将所有数据导入新数据库
显然有很多细节需要整理,但让Oracle在导入过程中正确转换字符集似乎是唯一合理的方法。我不确定大局是什么,但假设您当前的数据库中有支持变音符号的单个字符集,我宁愿使用完全不同的方法:
- 导出数据库和现有字符集所需的数据
- 使用unicode字符集重新创建数据库
- (很可能)更改te定义并使用CHAR而不是字节语义安装所有数据库对象
- 将所有数据导入新数据库
convert('fioajfiohawiofh',,)
我不知道您的字符集,但您可以尝试使用以下选择来查找有用的字符集:
SELECT
CONVERT('Æ, æ:,Ø, ø:,Å, å:',cs.value,'UTF8') AS conv
,cs.value
,cs.isdeprecated
FROM
V$NLS_VALID_VALUES cs
WHERE
cs.parameter = 'CHARACTERSET'
;
CONVERT()函数可以按如下方式使用CONVERT('fioajfiohawiofh',,)
我不知道您的字符集,但您可以尝试使用以下选择来查找有用的字符集:
SELECT
CONVERT('Æ, æ:,Ø, ø:,Å, å:',cs.value,'UTF8') AS conv
,cs.value
,cs.isdeprecated
FROM
V$NLS_VALID_VALUES cs
WHERE
cs.parameter = 'CHARACTERSET'
;