使用 UTF8 的 NCHAR 无法使用文件设置正确的捷克语单词
NCHAR with UTF8 doesn´t set up correct czech words using file
我想就一件事或只是您的观点请您帮忙。
我们在 PL/SQL 中的脚本运行正常。但是现在当我想要 运行 它时,它没有正确设置捷克语单词,例如 (ěščěščěřěščřěš
).
我在 Whosebug 中阅读此处以在代码前面添加 NCHAR
,所以我这样做了,只有当我将此代码直接放入 Toad for Oracle 进行控制台时它才有效。但是当我想根据我们的应用程序 upload/run 这个脚本时,我们会看到 ????? 而不是正确的字母。
我已经检查了很多次 UTF-8,我在许多编码之间切换并进行了测试,我在记事本、PSPadd 中尝试过,但没有任何效果。所以这一定与该文件的编码属性有关,对吧?
insert statement
INSERT INTO OUR_TABLE ( Client_No, Contact_Type,
Postal_Code, Address) Values ('999999','TTT','CZ',RPAD(N'Vladimír
Müller', 35) ||RPAD(N'Kovozal s.r.o.', 35) || RPAD(N'Zálší 74', 35) ||
RPAD(N'565 01 Zálší', 35));
旧脚本在没有 N
(NCHAR
) 的情况下工作正常。但现在不是。我认为除了问问 Oracle 管理员之外还有其他解决方案吗?
我再说一遍,N
和 RPAD
可以在控制台中找到,但不允许管理员在控制台中 运行 此脚本:他们必须以文件形式接收数据。
你会怎么做?
SQL UNIX 和 TOAD 中的客户端不同。您在 IDE 中使用了不同的 NLS_LANG
(UTF16),这让您相信 它显示了错误的字符.
所以解决方案是在 IDE.
中将 NLS_LANG
更改为 UTF8
我想就一件事或只是您的观点请您帮忙。
我们在 PL/SQL 中的脚本运行正常。但是现在当我想要 运行 它时,它没有正确设置捷克语单词,例如 (ěščěščěřěščřěš
).
我在 Whosebug 中阅读此处以在代码前面添加 NCHAR
,所以我这样做了,只有当我将此代码直接放入 Toad for Oracle 进行控制台时它才有效。但是当我想根据我们的应用程序 upload/run 这个脚本时,我们会看到 ????? 而不是正确的字母。
我已经检查了很多次 UTF-8,我在许多编码之间切换并进行了测试,我在记事本、PSPadd 中尝试过,但没有任何效果。所以这一定与该文件的编码属性有关,对吧?
insert statement
INSERT INTO OUR_TABLE ( Client_No, Contact_Type,
Postal_Code, Address) Values ('999999','TTT','CZ',RPAD(N'Vladimír
Müller', 35) ||RPAD(N'Kovozal s.r.o.', 35) || RPAD(N'Zálší 74', 35) ||
RPAD(N'565 01 Zálší', 35));
旧脚本在没有 N
(NCHAR
) 的情况下工作正常。但现在不是。我认为除了问问 Oracle 管理员之外还有其他解决方案吗?
我再说一遍,N
和 RPAD
可以在控制台中找到,但不允许管理员在控制台中 运行 此脚本:他们必须以文件形式接收数据。
你会怎么做?
SQL UNIX 和 TOAD 中的客户端不同。您在 IDE 中使用了不同的 NLS_LANG
(UTF16),这让您相信 它显示了错误的字符.
所以解决方案是在 IDE.
中将NLS_LANG
更改为 UTF8