2016-12-04 2 views
-1

Добрый день. Я пытаюсь получить русские символы с помощью Oracle db. Я пытаюсь установить env. переменные, изменить NLS_LANG в предпочтениях SQL Developer ... И то, что я есть сейчас:Oracle DB: кодировка для RU

PARAMETER      VALUE               
------------------------------ ---------------------------------------------------------------- 
NLS_LANGUAGE     RUSSIAN               
NLS_TERRITORY     RUSSIA               
NLS_CURRENCY     ¿.                
NLS_ISO_CURRENCY    RUSSIA               
NLS_NUMERIC_CHARACTERS   .,                
NLS_CALENDAR     GREGORIAN               
NLS_DATE_FORMAT    DD.MM.RR               
NLS_DATE_LANGUAGE    RUSSIAN               
NLS_SORT      RUSSIAN               
NLS_TIME_FORMAT    HH24:MI:SSXFF              
NLS_TIMESTAMP_FORMAT   DD.MM.RR HH24:MI:SSXFF           
NLS_TIME_TZ_FORMAT    HH24:MI:SSXFF TZR             
NLS_TIMESTAMP_TZ_FORMAT  DD.MM.RR HH24:MI:SSXFF TZR          
NLS_DUAL_CURRENCY    ¿.                
NLS_COMP      BINARY               
NLS_LENGTH_SEMANTICS   BYTE                
NLS_NCHAR_CONV_EXCP   FALSE                

17 rows selected 

COL1  COL2          
---------- -------------------------------------------------- 
¿¿¿¿  ¿¿¿¿¿¿¿¿¿¿¿ ¿¿¿¿ ¿ ¿¿¿¿¿¿¿¿¿¿  
+0

Итак, почему русские символы не отображаются? – Evgeniy175

+0

Какой набор символов вашей базы данных? Что такое «NLS_LANG»? Возможно, вы используете набор символов клиента, который не может кодировать кириллические буквы. –

+0

@LaurenzAlbe 'RUSSIAN_CIS.CL8MSWIN1251' это значение NLS_LANG. Но 'NLS_CHARACTERSET' -' WE8MSWIN1252'. Это проблема? Как его изменить? – Evgeniy175

ответ

1

Ваш набор символов базы данных не может кодировать символы кириллицы, так что вы не будете иметь возможность хранить их в базе данных.

У вас есть два варианта:

  1. Создать новую базу данных с набором символов AL32UTF8. Это лучший вариант.

  2. Создайте поля, которые должны содержать кириллические символы, как NVARCHAR.

Смежные вопросы