use*_*180 4 oracle encoding sqlplus
我有一个通过 sqlplus 执行 SQL 脚本的批处理文件:
(
echo @"./myUTF8.sql"
echo @"./myAnsi.sql"
) | sqlplus uset/pwd@mybd
Run Code Online (Sandbox Code Playgroud)
不幸的是,这些 SQL 脚本是以不同的编码生成的,Ansi、UTF8...
如何告诉 sqlplus 脚本具有指定的编码?
您必须使用 command 更改编码chcp,例如chcp 65001对于 UTF-8 或chcp 1252Windows 1252。术语“ANSI”只是许多不同编码的通用名称。请参阅本国家语言支持 (NLS) API 参考中的“ANSI 代码页”列,获取适合您所在区域的代码页。
如果您必须更改 SQL 脚本内的编码,请使用host chcp ...
但是,您还必须NLS_LANG相应地设置环境变量。因此,在更改代码页后,您还必须运行例如SET NLS_LANG=.AL32UTF8或SET NLS_LANG=.WE8MSWIN1252。
请参阅OdbcConnection 返回中文字符为“?” 更多细节。
我有一个以 UTF8 创建的 SQL 脚本,在打开 sqlplus 之前在 Linux 中使用 sqlplus 运行它
export NLS_LANG=.AL32UTF8
Run Code Online (Sandbox Code Playgroud)
然后使用sqlplus加载脚本。
| 归档时间: |
|
| 查看次数: |
20827 次 |
| 最近记录: |