|
|
|
NLS_LANG и ORA-29275
|
|||
|---|---|---|---|
|
#18+
Проблема такая - добавляю русский текст в юниксе из sqlplus, потом читаю его там же - всё нормально. Делаю выборку в винде, или в win-приложении, которое работает с этими данными - либо ORA-29275 либо кракозябры. И наоборот - добавляю в винде, в ней же читаю - все ОК, и приложения в этом случае видят русский. Что делаю не так? Мне надо чтобы insert'ы с русским из unix-sqlplus были читабельны в винде. В базе NLS_NCHAR_CHARACTERSET = AL16UTF16 Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. Проверяю результат в винде с AMERICAN_AMERICA.CL8MSWIN1251, и получаю ORA-29275 или кракозябры для другого текста: Код: plsql 1. 2. 3. 4. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.11.2016, 14:05 |
|
||
|
NLS_LANG и ORA-29275
|
|||
|---|---|---|---|
|
#18+
БораОраNLS_NCHAR_CHARACTERSET = AL16UTF16 Это для NCHAR. А поле в таблице t1 какого типа? Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.11.2016, 14:11 |
|
||
|
NLS_LANG и ORA-29275
|
|||
|---|---|---|---|
|
#18+
БораОраВ базе NLS_NCHAR_CHARACTERSET = AL16UTF16Не то. БораОра Код: plsql 1. Не N-литерал. БораОра Код: plsql 1. Тип столбца? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.11.2016, 14:11 |
|
||
|
NLS_LANG и ORA-29275
|
|||
|---|---|---|---|
|
#18+
Забыл указать: Код: sql 1. 2. 3. Ну и для полной информации: Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.11.2016, 14:15 |
|
||
|
NLS_LANG и ORA-29275
|
|||
|---|---|---|---|
|
#18+
Извиняйте, вот делаю в линуксе: Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. И получаю ошибку или кракозябры в винде при чтении. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.11.2016, 14:18 |
|
||
|
NLS_LANG и ORA-29275
|
|||
|---|---|---|---|
|
#18+
БораОраИ получаю ошибку или кракозябры в винде при чтении. Проверь с помощью DUMP() что именно лежит в поле. Сравни с правильными кодами. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.11.2016, 14:37 |
|
||
|
NLS_LANG и ORA-29275
|
|||
|---|---|---|---|
|
#18+
из Линукса: Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. Из винды Код: plsql 1. Результат с dump, вторая(правильная?) строка была добавлена из винды): Код: sql 1. 2. 3. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.11.2016, 14:57 |
|
||
|
NLS_LANG и ORA-29275
|
|||
|---|---|---|---|
|
#18+
БораОраРезультат с dump, вторая(правильная?) строка была добавлена из винды): Значит в линуксе у тебя локаль не utf-8 как ты утверждаешь. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.11.2016, 15:12 |
|
||
|
NLS_LANG и ORA-29275
|
|||
|---|---|---|---|
|
#18+
А как проверить? Может файлы заменены какие-то? Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.11.2016, 15:22 |
|
||
|
NLS_LANG и ORA-29275
|
|||
|---|---|---|---|
|
#18+
БораОраА как проверить? Ну, лично у меня для этого есть файл, содержащий строки в разных кодировках. Какая отображается правильно, такая локаль и установлена. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.11.2016, 15:28 |
|
||
|
NLS_LANG и ORA-29275
|
|||
|---|---|---|---|
|
#18+
можно попросить этот файл через какой-нибудь файло-обменник? Тут RHEL 6.5. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.11.2016, 15:31 |
|
||
|
NLS_LANG и ORA-29275
|
|||
|---|---|---|---|
|
#18+
Вот еще, что интересно - в sqlplus когда переключаюсь на русский - русские символы печатаются, когда делаю тоже самое в юникс-шеле - ничего не печатается, пока не переключусь на английский. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.11.2016, 15:35 |
|
||
|
NLS_LANG и ORA-29275
|
|||
|---|---|---|---|
|
#18+
БораОраА как проверить? Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. Правильный вывод locale не такой. Не установлена локаль в линухе. Работаете с "C" - при этом NLS_LANG установили равным серверному - отсюда все проблемы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.11.2016, 15:59 |
|
||
|
NLS_LANG и ORA-29275
|
|||
|---|---|---|---|
|
#18+
Андрей, большое спасибо за подсказку.... RHEL 6.5 Поменял файл: Код: plsql 1. 2. 3. 4. Под рутом локаль показывает ru и дает набирать русский текст. ~]# йффыыыыывыввцъхззжqwqwqa Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. Но вот что мне не нравится, системные сообщения идут на абракадабре. Что сделать, чтобы они остались на английском? - Код: plsql 1. 2. Далее, под обычным пользователем переключение языка в шеле не срабатывает почему-то. И еще, можно ли как-то установить локаль для конкретного пользователя, а не для всей системы? И чтобы системные сообщения шли на английском? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.11.2016, 16:56 |
|
||
|
NLS_LANG и ORA-29275
|
|||
|---|---|---|---|
|
#18+
БораОраможно попросить этот файл через какой-нибудь файло-обменник? В аттаче. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.11.2016, 17:10 |
|
||
|
NLS_LANG и ORA-29275
|
|||
|---|---|---|---|
|
#18+
Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.11.2016, 17:48 |
|
||
|
NLS_LANG и ORA-29275
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakov, Спасибо за файл - в FAR проверил по F9 - всё срабатывает одна строка отображается в каждой кодировке. А вот в юниксе как и предполагалось .... Код: sql 1. 2. 3. 4. Это в исходной версии, с правильной локалью сейчас не могу проверить. Надо разобраться, чтобы системные сообщения линукса нормально шли, и желательно локаль не на весь сервер менять если возможно. Или хотя бы чтобы системные сообщения шли на английском. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.11.2016, 17:49 |
|
||
|
NLS_LANG и ORA-29275
|
|||
|---|---|---|---|
|
#18+
БораТораА вот в юниксе как и предполагалось .... Кодировку терминала меняли? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.11.2016, 17:50 |
|
||
|
NLS_LANG и ORA-29275
|
|||
|---|---|---|---|
|
#18+
БораТораА вот в юниксе как и предполагалось .... Ты, похоже, не за физической консолью сидишь. Настраивай программу терминала. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.11.2016, 18:04 |
|
||
|
NLS_LANG и ORA-29275
|
|||
|---|---|---|---|
|
#18+
Андрей, спасибо за наводки, теперь проще проверять ..... Сейчас проверю кодировку программы - SecureCRT - вот я олень .... У меня ощущение, что в SQLPLUS в линуксе кодировка живет своей жизнью. Ведь при US кодировке в SQLPLUS срабатывает переключение на "какой-то" русский. Т.е. всё набирается, но вот что идет в базу ... При этом в шеле вообще ничего не набирается при US.... Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. From windows PLSQLDeveloper Код: plsql 1. 2. 3. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.11.2016, 18:09 |
|
||
|
NLS_LANG и ORA-29275
|
|||
|---|---|---|---|
|
#18+
Среди них есть 1251? Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. Просто будут файлы с винды, и хотелось бы их видеть нормально в линуксоидном sqlplus. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.11.2016, 18:12 |
|
||
|
NLS_LANG и ORA-29275
|
|||
|---|---|---|---|
|
#18+
В SecureCRT стоит кодировка Default при этом после установки кои8 можно набирать русский текст в шеле: Код: plsql 1. 2. 3. 4. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.11.2016, 18:25 |
|
||
|
NLS_LANG и ORA-29275
|
|||
|---|---|---|---|
|
#18+
В SecureCRT стоит кодировка Default при этом после установки кои8 можно набирать русский текст в шеле: Код: plsql 1. 2. 3. 4. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.11.2016, 18:25 |
|
||
|
NLS_LANG и ORA-29275
|
|||
|---|---|---|---|
|
#18+
Я может не с того начал.... С этого сервера будет идти DML из SQLPLUS в файлах с винды, в 1251. Т.е., чтобы SELECT c винды потом показал русский текст, NLS_LANG в линуксе должен быть 1251, если я всё правильно понимаю. Это решит вопрос отображения и в линуксе и винде. Соответствовать NLS_LANG должна и линуксоидная локаль. Как настроить линукс для такой задачи? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.11.2016, 18:41 |
|
||
|
NLS_LANG и ORA-29275
|
|||
|---|---|---|---|
|
#18+
БораОраС этого сервера будет идти DML из SQLPLUS в файлах с винды, в 1251.nls_lang должен соответствовать содержимому файлов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.11.2016, 18:53 |
|
||
|
NLS_LANG и ORA-29275
|
|||
|---|---|---|---|
|
#18+
Спасибо аксакалы.... Установил в SecureCRT кодировку KOI8-R , открыл новую сессию, дальше в SHELL : Код: plsql 1. 2. Вставил строку из sqlplus(в нём и набрал русский для поля), прочитал эту строку в винде с 1251 в PLSQLDeveloper. Всё ОК. Теперь мне надо тоже самое, для 1251, так как файлы будут в такой кодировке. Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.11.2016, 19:12 |
|
||
|
NLS_LANG и ORA-29275
|
|||
|---|---|---|---|
|
#18+
ElicБораОраС этого сервера будет идти DML из SQLPLUS в файлах с винды, в 1251.nls_lang должен соответствовать содержимому файлов. Вот о чем и речь. локаль ведь тоже должна.... иначе будут кракозябры.... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.11.2016, 19:16 |
|
||
|
NLS_LANG и ORA-29275
|
|||
|---|---|---|---|
|
#18+
БораТораElicпропущено... nls_lang должен соответствовать содержимому файлов.Вот о чем и речь. локаль ведь тоже должна.... иначе будут кракозябры....Чудак, неужто кто-то будет таращится в моник, когда cron-ом сработает загрузка?! И за это кому-то платят зарплату ?!! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.11.2016, 09:52 |
|
||
|
NLS_LANG и ORA-29275
|
|||
|---|---|---|---|
|
#18+
ElicБораТорапропущено... Вот о чем и речь. локаль ведь тоже должна.... иначе будут кракозябры....Чудак, неужто кто-то будет таращится в моник, когда cron-ом сработает загрузка?! И за это кому-то платят зарплату ?!! Действительно, достаточно поменять NLS_LANG - кодировок. Если на юникс машине с locale KOI8 или UTF-8 поставить NLS_LANG AMERICAN_AMERICA.CL8MSWIN1251, а файл в 1251 - да, при просмотре будут кракозябры, но в базу пойдет все также как с вин машины. SELECT с винды даст русские символы. Т.е. тут порядок. И мне этого в принципе достаточно. 1251 по умолчанию на RHEL сейчас нет, что-то надо до-устанавливать.... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.11.2016, 11:32 |
|
||
|
NLS_LANG и ORA-29275
|
|||
|---|---|---|---|
|
#18+
Мне не очень понятно как какое-то время sql-файлы и exp-дампы грузились с AMERICAN_AMERICA.AL32UTF8 (на сервере базы и на сервере загрузки-выгрузки был одинаковый NLS_LANG - .AL32UTF8). Если exp-дампами можно считать, что при одинаковом NLS_LANG просто не будет никаких перекодировок, то как работали *sql файлы c 1251? Их совершенно точно грузили с линукса с AMERICAN_AMERICA.AL32UTF8 и всё работало. В винде при чтении был русский. Сейчас проверил - не прокатывает. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.11.2016, 13:15 |
|
||
|
NLS_LANG и ORA-29275
|
|||
|---|---|---|---|
|
#18+
БораОраможно считатьТебе, ламеру, не рекомендуется что-либо считать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.11.2016, 13:51 |
|
||
|
NLS_LANG и ORA-29275
|
|||
|---|---|---|---|
|
#18+
ElicБораОраможно считатьТебе, ламеру, не рекомендуется что-либо считать. Согласен, прошу сильно не пинать, постараюсь точнее изложить. Считаю, Точнее прошу объяснить ситуацию, если на клиенте NLC_LANG совпадает с NLS_CHARACTERSET в базе. Например, если база с "европейским" NLS_CHARACTERSET и на клиенте такой же NLS_LANG, то в винде при вставке/чтении русских символов(1251) проблем не будет(будут другие проблемки). Хотя NLS_LANG не соответствует русскому. Т.е. нет "перемапливания" символов при передаче между клиентом и базой. С этим согласны? (нет под рукой базы с таким NLS_CHARACTERSET проверить) C UTF это как-то по другому работает.... Если ставлю и на винде такой же NLS_LANG = .AL32UTF8 как в базе(или 1251 ), то при чтении получаю : ORA-29275: partial multibyte character В линуксе тоже как-то не так работает, - вижу русский при NLS_LANG =.AL32UTF8 и если НЕ установлен LC_ALL= и в терминале стоит виндовая кодировка. С LC_ALL=ru_RU.UTF-8 - идут вопросы.... возможно это проблемы кодировки терминала. --nls_lang должен соответствовать содержимому файлов. Да, спасибо.... В целом при любой локали+ .CL8MSWIN1251(nls_lang), загруженный файл с 1251 русским текстом(Insert, dump), потом нормально читается в винде c .CL8MSWIN1251. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.11.2016, 15:38 |
|
||
|
|

start [/forum/topic.php?all=1&fid=52&tid=1886987]: |
0ms |
get settings: |
9ms |
get forum list: |
19ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
56ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
63ms |
get tp. blocked users: |
2ms |
| others: | 244ms |
| total: | 410ms |

| 0 / 0 |
