Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Web программирование > SQL, базы данных
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 29.03.2014, 03:57   #1
Blondy
Участник клуба
 
Аватар для Blondy
 
Регистрация: 07.07.2009
Сообщений: 1,386
По умолчанию Postgres: может ли база данных дать отчет, какой язык используется в данных?

Дорогие форумчане, у меня возник такой хитрый вопрос про базу данных Postgres: в таблице могут быть данные написанные как на кириллице, так на обычной латинице, или же на латинице со спецсимволами (допустим, используются норвежские буквы å, æ, финские ä,ü,ö - эти символы относятся к Расширенной латинице-1). Может ли Postgres каким-то образом выдавать пользователю синопсис - это кириллица, это расширенная латиница, это обычная латиница, если для базы данных используется стандартная кодировка utf-8?

Если да - каким образом можно реализовать подобную отчетность? Насколько сложным и объемным по времени будет механизм получения подобного отчета - может, "слон" будет очень долго думать и есть смысл поискать какие-то обходные пути, нежели спрашивать у Postgres напрямую - на каком языке это написано?

PS Прошу прощения, даже форум плохо отобразил скандинавский алфавит, выдал коды букв. счас я картинок нарежу со скандинавскими буквами.
Изображения
Тип файла: png norsk.png (2.2 Кб, 86 просмотров)
Тип файла: png finn.png (465 байт, 100 просмотров)
"Все мы жаждем чудес. Чисто человеческое свойство." Carl Sagan

Последний раз редактировалось Blondy; 29.03.2014 в 04:23.
Blondy вне форума Ответить с цитированием
Старый 29.03.2014, 19:57   #2
eval
Подтвердите свой е-майл
 
Регистрация: 29.08.2012
Сообщений: 4,022
По умолчанию

это коды символов, в кодировке utf-8
при чем тут кирилицы и латиницы?
eval вне форума Ответить с цитированием
Старый 30.03.2014, 06:25   #3
Vapaamies
Ваш К. О.
Участник клуба
 
Аватар для Vapaamies
 
Регистрация: 26.12.2012
Сообщений: 1,755
По умолчанию

Цитата:
Сообщение от Blondy Посмотреть сообщение
Может ли Postgres каким-то образом выдавать пользователю синопсис - это кириллица, это расширенная латиница, это обычная латиница, если для базы данных используется стандартная кодировка utf-8?
Как-то так:
Код:
select
  my_field,
  case
    when my_field similar to '[\u00C0-\u024F]' then 'Latin-1'
    when my_field similar to '[\u0400-\u052F]' then 'Cyrillic'
    else 'ASCII'
  end
from
  my_table;
Если не полезет одним case, придется разбить на три (под)запроса. PostgreSQL под рукой нет, проверить в деле не могу.
Vapaamies вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Проектирование базы данных в Postgres: выбор типа данных между TEXT и VARCHAR Blondy Общие вопросы по программированию, компьютерный форум 6 06.03.2014 02:09
Какой слайдер используется? Лубышев JavaScript, Ajax 0 18.03.2013 10:06
Какой метод используется? (обратная матрица) Vesper_Lind Софт 0 18.02.2012 16:07
какой язык программирования используется? Tapochek1975 Помощь студентам 11 29.10.2010 15:24
Какой компонент используется? zmey31313 Компоненты Delphi 1 26.02.2010 08:00