powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Как запихнуть символ расширенной латиницы Ø в текст представления?
15 сообщений из 15, страница 1 из 1
Как запихнуть символ расширенной латиницы Ø в текст представления?
    #39675452
Фотография Pastic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Делаю так:
1. В PL/SQL Developer'e 9.0.2.1621 выполняю:
Код: plsql
1.
2.
create or replace view v_tmp as
select '40Х Ø40' x from dual


2. Закрываю то окно, в котором это выполнялось.
3. Открываю на просмотр текст созданного представления v_tmp и получаю текст
Код: plsql
1.
2.
create or replace view v_tmp as
select '40Х O40' x from dual;

, в котором символ Ø замёнен на символ O.

В PL/SQL Developer'e 10.0.3.1701 всё тоже самое.

Что нужно сделать, чтобы текст представления содержал символ Ø? (Этот форум почему-то вместо этого символа отображает русскую букву Ш).
...
Рейтинг: 0 / 0
Как запихнуть символ расширенной латиницы Ø в текст представления?
    #39675453
Фотография Pastic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Pastic(Этот форум почему-то вместо этого символа отображает русскую букву Ш).

Уточнение: в режиме предпросмотра.
...
Рейтинг: 0 / 0
Как запихнуть символ расширенной латиницы Ø в текст представления?
    #39675455
Фотография Elic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PasticЧто нужно сделать, чтобы текст представления содержал символ Ø?Какая кодировка на сервере,а какая на клиенте?
...
Рейтинг: 0 / 0
Как запихнуть символ расширенной латиницы Ø в текст представления?
    #39675458
Фотография Pastic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PasticДелаю так:
1. В PL/SQL Developer'e 9.0.2.1621 выполняю:
Код: plsql
1.
2.
create or replace view v_tmp as
select '40Х Ø40' x from dual




Форумные теги синтаксиса также исказили текст. Вот исходный текст?
create or replace view v_tmp as
select '40Х Ø40' x from dual;
...
Рейтинг: 0 / 0
Как запихнуть символ расширенной латиницы Ø в текст представления?
    #39675472
Фотография Pastic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ElicPasticЧто нужно сделать, чтобы текст представления содержал символ Ø?Какая кодировка на сервере,а какая на клиенте?

Код: plsql
1.
SELECT value FROM NLS_DATABASE_PARAMETERS where parameter='NLS_CHARACTERSET';


возвращает CL8MSWIN1251. И поскольку в настройках PL/SQL Developer'a стоит галка "Check for client & server character set mismatch", то, видимо, на клиенте такая же.

Oracle Database 12c Enterprise Edition Release 12.1.0.2.0 - 64bit Production
...
Рейтинг: 0 / 0
Как запихнуть символ расширенной латиницы Ø в текст представления?
    #39675480
Фотография Elic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PasticCL8MSWIN1251Ты наивно полагаешь, что в этой кодировке есть такой символ?
...
Рейтинг: 0 / 0
Как запихнуть символ расширенной латиницы Ø в текст представления?
    #39675495
Фотография andrey_anonymous
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ElicPasticCL8MSWIN1251Ты наивно полагаешь, что в этой кодировке есть такой символ?
NVARCHAR2 можно попробовать.
Но клиента с 1251 придется ссаживать, иначе не взлетит.
...
Рейтинг: 0 / 0
Как запихнуть символ расширенной латиницы Ø в текст представления?
    #39675761
Alibek B
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Pasticвозвращает CL8MSWIN1251
В кодовой странице 1251 нет такого символа, нужно использовать юникод.
Кроме того, предположу что используемый символ также ошибочен и вместо Ø (Ø, латинская буква O с диагональной чертой) должен использоваться ⌀ (⌀, символ диаметра).
...
Рейтинг: 0 / 0
Как запихнуть символ расширенной латиницы Ø в текст представления?
    #39675762
Alibek B
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alibek B.вместо 216 ; (Ø, латинская буква O с диагональной чертой) должен использоваться 8960 ; (⌀, символ диаметра).
...
Рейтинг: 0 / 0
Как запихнуть символ расширенной латиницы Ø в текст представления?
    #39676924
Фотография Pastic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alibek B.Alibek B.вместо 216 ; (Ø, латинская буква O с диагональной чертой) должен использоваться 8960 ; (⌀, символ диаметра).

Похоже, что этого символа тоже нет в CL8MSWIN1251.
...
Рейтинг: 0 / 0
Как запихнуть символ расширенной латиницы Ø в текст представления?
    #39676933
123йй
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Pastic,

а символ "D" есть (chr(68))?
...
Рейтинг: 0 / 0
Как запихнуть символ расширенной латиницы Ø в текст представления?
    #39677023
Alibek B
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PasticПохоже, что этого символа тоже нет в CL8MSWIN1251.
В моем ответе ключевым было не «В кодовой странице 1251 нет такого символа», а «нужно использовать юникод».
Если же нужно использовать CL8MSWIN1251, значит нужно ограничиваться теми символами, которые входят в эту кодировку.
Например латинской буквой D.
...
Рейтинг: 0 / 0
Как запихнуть символ расширенной латиницы Ø в текст представления?
    #39677029
Alibek B
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вот символы, доступные в кодовой странице 1251.
...
Рейтинг: 0 / 0
Как запихнуть символ расширенной латиницы Ø в текст представления?
    #39677056
Фотография andrey_anonymous
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alibek B.ключевым было ... «нужно использовать юникод».

Есть еще варианты.
- Перепереть БД и клиента на юникодицу - оно как бы понятно, но не всегда разумно.
- Перепереть на юникодицу только клиента, в а БД выборочно использовать N-варианты строчных типов (NVARCHAR2, NCHAR).
- Создать собственную кодировку/локаль , для чего существует locale builder, где переназначить один из "ненужных" символов под желаемый.
...
Рейтинг: 0 / 0
Как запихнуть символ расширенной латиницы Ø в текст представления?
    #39677118
Alibek B
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
andrey_anonymous- Перепереть БД и клиента на юникодицу - оно как бы понятно, но не всегда разумно.
Почему?
Я считал, что последние по крайней мере лет восемь, при создании БД или ПО нужны особые причины, чтобы не использовать юникод.
...
Рейтинг: 0 / 0
15 сообщений из 15, страница 1 из 1
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Как запихнуть символ расширенной латиницы Ø в текст представления?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]