使用 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 管理员之外还有其他解决方案吗?

我再说一遍,NRPAD 可以在控制台中找到,但不允许管理员在控制台中 运行 此脚本:他们必须以文件形式接收数据。

你会怎么做?

SQL UNIX 和 TOAD 中的客户端不同。您在 IDE 中使用了不同的 NLS_LANG (UTF16),这让您相信 它显示了错误的字符.

所以解决方案是在 IDE.

中将 NLS_LANG 更改为 UTF8