Varchar2(20 Byte)列可容纳更多然后允许的数据

时间:2018-09-25 09:12:44

标签: oracle character-encoding

我有一列x VARCHAR2(20 BYTE)

当插入大小大于20个字节的数据时,它可以正常工作。

这应该如何工作?在这种情况下会出现错误。字符也从♫ -> ¿

转换而来
UPDATE "table" 
    SET x = '¿¿¿¿¿¿¿¿¿¿¿¿☼☼☼☼☼☼☼' 
WHERE xxx = 'xxx' 
  AND yyy = 'yyy'

提交成功

1 个答案:

答案 0 :(得分:0)

通过查询发现字符集为WE8MSWIN1252

从sys.props $ WHERE名称='NLS_CHARACTERSET'中选择值$;

这就是允许输入字符的原因,因为WE8MSWIN1252是单字节字符集。