首页 > 解决方案 > 在 oracle 中更改字符集 utf8

问题描述

我在将哈萨克语中的数据从一个 db oracle 转换到另一个 oracle 时遇到问题。源数据库有AL32UTF8 NLS_CHARACTERSET(根据v$nls_parameters),目标有CL8MSWIN1251 这个怎么解决?我用 informatica 插入 raw

标签: oraclecharacter-encodingnls-lang

解决方案


根据HOW TO: Set the Oracle NLS_LANG environment variable you

将托管 Informatica 服务的计算机上的 NLS_LANG 环境变量设置为 Oracle 客户端操作系统正在使用的值。

对我来说,不清楚“Oracle 客户端操作系统正在使用的价值”是什么意思。

如果 Informatica 在 Linux/Unix 上运行,那么它可能很容易。检查locale charmapecho $LANG

在 Windows 上,您实际上有两个字符集。适用于控制台(也称为 DOS 窗口)的OEM 代码页和通常适用于 GUI 应用程序的ANSI 代码页。

您可以使用命令查询(和修改)的 OEM 代码页chcp

您可以从 Registry 获得的 ANSI 代码页HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Nls\CodePage\ACP来自National Language Support (NLS) API Reference

我不知道哪一个适用于 Informatica,但您应该可以尝试。


推荐阅读