我正在使用带有SPOOL命令的sqlplus从SELECT查询创建一个文件。我的SELECT查询中的某些列具有法语字符,这些字符未正确写入文件。 SELECT RPAD(Column1,'',32)FROM TableX; 如果Column1的值包含例如字符“é”,则输出将具有length = 31而不是32,并且“é”char未在输出文件中正确显示。
如何格式化列以便从列中获取正确的值和长度?
答案 0 :(得分:0)
我发现了如何解决格式化问题。
1.所选列的定义必须从Column1 VARCHAR2(32 BYTE)
替换为VARCHAR2(32 CHAR)
;
2. charset environnemnt变量NLS_LANG必须接受法语字符:NLS_LANG=FRENCH_FRANCE.WE8ISO8859P15
。
无论如何,谢谢!