Как получить значения перечисления (enum)

Подскажите, пожалуйста, каким образом можно получить описание типа, определённого пользователем, а именно, enum. Нужно вытащить все его значения SQL запросом. Так и не смог найти как это делается. Возможно ли это вообще?

Опции просмотра комментариев

Выберите предпочитаемый вами способ показа комментариев и нажмите "Сохранить настройки" для активации изменений.

А подробней?

А подробней? Что делалось и как и что надо получить? Таблицы, структуры, операторы
-----------------------------------------------------------------------------------
"ls /" (C) Козьма Прутков

Пример

Создаём перечисление.
CREATE TYPE mood AS ENUM ('sad', 'ok', 'happy');

Каким запросом потом получить sad, ok, happy?
Нужно для веб-интерфейса, чтобы сделать select из возможных значений. Такое, например, есть в PhpMyAdmin (для MySQL), а в pgAdmin - нет.

Пожалуйста

Пожалуйста приведите ПРАВИЛЬНУЮ информацию. Вот что мне выдаёт указанная вами строка:

CREATE TYPE mood AS ENUM ('sad', 'ok', 'happy');
ERROR:  ошибка синтаксиса в или рядом "ENUM"
LINE 1: CREATE TYPE mood AS ENUM ('sad', 'ok', 'happy');

-----------------------------------------------------------------------------------
"ls /" (C) Козьма Прутков

Пример я взял

Пример я взял из документации. У меня он никаких ошибок не вызывает. :)
Суть вопроса несколько в другом: каким образом получить варианты значений, указанных в перечислении. Команды тиа «GET» ENUM я не обнаружил :(

Не создав то,

Не создав то, что создали вы я не могу ничего проверить и попробовать. Даже понял почему - у меня 8.2, а эта фича из 8.3 :)

Поэтому всё что мне остаётся сказать - не знаю.
-----------------------------------------------------------------------------------
"ls /" (C) Козьма Прутков

вам поможет функция enum_range

select enum_range( null::mood );

Подробнее смотрите Enum Support Functions в документации.
Это имеется в PostgreSQL v 8.3

Опции просмотра комментариев

Выберите предпочитаемый вами способ показа комментариев и нажмите "Сохранить настройки" для активации изменений.

Back to top

(С) Виктор Вислобоков, 2008-2023