Подскажите, пожалуйста, каким образом можно получить описание типа, определённого пользователем, а именно, enum. Нужно вытащить все его значения SQL запросом. Так и не смог найти как это делается. Возможно ли это вообще?
А подробней? Что делалось и как и что надо получить? Таблицы, структуры, операторы
-----------------------------------------------------------------------------------
"ls /" (C) Козьма Прутков
Создаём перечисление.
CREATE TYPE mood AS ENUM ('sad', 'ok', 'happy');
Каким запросом потом получить sad, ok, happy?
Нужно для веб-интерфейса, чтобы сделать select из возможных значений. Такое, например, есть в PhpMyAdmin (для MySQL), а в pgAdmin - нет.
Пример я взял из документации. У меня он никаких ошибок не вызывает.
Суть вопроса несколько в другом: каким образом получить варианты значений, указанных в перечислении. Команды тиа «GET» ENUM я не обнаружил
Не создав то, что создали вы я не могу ничего проверить и попробовать. Даже понял почему - у меня 8.2, а эта фича из 8.3
Поэтому всё что мне остаётся сказать - не знаю.
-----------------------------------------------------------------------------------
"ls /" (C) Козьма Прутков
А подробней?
А подробней? Что делалось и как и что надо получить? Таблицы, структуры, операторы
-----------------------------------------------------------------------------------
"ls /" (C) Козьма Прутков
Пример
Создаём перечисление.
CREATE TYPE mood AS ENUM ('sad', 'ok', 'happy');
Каким запросом потом получить sad, ok, happy?
Нужно для веб-интерфейса, чтобы сделать select из возможных значений. Такое, например, есть в PhpMyAdmin (для MySQL), а в pgAdmin - нет.
Пожалуйста
Пожалуйста приведите ПРАВИЛЬНУЮ информацию. Вот что мне выдаёт указанная вами строка:
-----------------------------------------------------------------------------------
"ls /" (C) Козьма Прутков
Пример я взял
Пример я взял из документации. У меня он никаких ошибок не вызывает.
Суть вопроса несколько в другом: каким образом получить варианты значений, указанных в перечислении. Команды тиа «GET» ENUM я не обнаружил
Не создав то,
Не создав то, что создали вы я не могу ничего проверить и попробовать. Даже понял почему - у меня 8.2, а эта фича из 8.3
Поэтому всё что мне остаётся сказать - не знаю.
-----------------------------------------------------------------------------------
"ls /" (C) Козьма Прутков
вам поможет функция enum_range
select enum_range( null::mood );
Подробнее смотрите Enum Support Functions в документации.
Это имеется в PostgreSQL v 8.3