0

我正在尝试在批处理文件中将 NLS_LANG 设置设置为 POLISH_POLAND.EE8PC852。批处理文件进一步执行sql文件,如下所示

set NLS_LANG=POLISH_POLAND.EE8PC852
sqlplus username/password@sid @SetLang.sql

SetLang.sql 更新我数据库中的一些表。当我调用这个 bat 文件时,特殊字符不会在我的数据库中更新,但是当我从 sqldeveloper 执行相同的 sql 时,它们会得到更新。

我哪里错了?

4

1 回答 1

0

这在我看来没问题。您可以SELECT * FROM NLS_SESSION_PARAMETERS;在“SetLang.sql”中执行并查看您的会话参数是什么吗?

环境中的 NLS_LANG 值优先于注册表中的值,因此这应该不是问题。您也可以尝试更改注册表中的值,但要注意其他程序的副作用。

此外,请确保您的 SQL Developer NLS 设置也设置为 POLISH_POLAND.EE8PC852。

于 2013-11-01T13:54:17.363 回答