PL/SQL开发人员命令窗口脚本编码
我正在通过pl/SQLDeveloper命令窗口运行一个sql脚本。它是一个简单的脚本,包含两个插入命令,用两种不同的语言(法语和英语)插入两个标签。 法语标签中的某些字符插入了“错误格式”。运行查询PL/SQL开发人员命令窗口脚本编码,sql,oracle,character-encoding,plsqldeveloper,Sql,Oracle,Character Encoding,Plsqldeveloper,我正在通过pl/SQLDeveloper命令窗口运行一个sql脚本。它是一个简单的脚本,包含两个插入命令,用两种不同的语言(法语和英语)插入两个标签。 法语标签中的某些字符插入了“错误格式”。运行查询select*from V$NLS_PARAMETERS返回值 NLS_语言=美语 NLS_地区=美国 NLS_字符集=UTF8 我的脚本文件以UTF编码保存。 我正在Windows 10计算机上运行。 我应该更改NLS_LANG值吗?如果是,我应该插入什么值?标签可以是英文和法文。 是否仍要以某种
select*from V$NLS_PARAMETERS
返回值NLS_语言=美语
NLS_地区=美国
NLS_字符集=UTF8 我的脚本文件以UTF编码保存。
我正在Windows 10计算机上运行。
我应该更改NLS_LANG值吗?如果是,我应该插入什么值?标签可以是英文和法文。
是否仍要以某种编码方式运行命令窗口?或者这些都不是解决方案,我必须做些别的事情
提前感谢。最安全的选择可能是使用
UNISTR
转义任何非ASCII字符:
SQL> select unistr('Fran\00E7ais') label from dual;
LABEL
-----------------
Français
我相信有一种方法可以配置您的脚本、操作系统和PL/SQL开发人员,使其在本机上使用不同的字符集。但是如果有人用SQL*Plus运行脚本,会发生什么呢?如果只有几个非ASCII字符,转义它们可能是最简单的解决方案。最安全的选择可能是使用
UNISTR
转义任何非ASCII字符:
SQL> select unistr('Fran\00E7ais') label from dual;
LABEL
-----------------
Français
我相信有一种方法可以配置您的脚本、操作系统和PL/SQL开发人员,使其在本机上使用不同的字符集。但是如果有人用SQL*Plus运行脚本,会发生什么呢?如果只有几个非ASCII字符,则转义它们可能是最简单的解决方案