Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / как в функции на plpgsql использовать название поля из переменной? / 5 сообщений из 5, страница 1 из 1
18.08.2008, 21:04
    #35493619
моррут
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как в функции на plpgsql использовать название поля из переменной?
к примеру в триггерной функции
NEW.field - это в новой записи поле с именем field
а если у меня есть переменная fieldname с именем поля внутри, как писать?
как это сделать на pl/perl pl/tcl я знаю, а вот в pl/pgsql как записывается и возможно ли вообще?

С уважением, Тимур
...
Рейтинг: 0 / 0
19.08.2008, 01:03
    #35493794
Ёш
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как в функции на plpgsql использовать название поля из переменной?
моррутк примеру в триггерной функции
NEW.field - это в новой записи поле с именем field
а если у меня есть переменная fieldname с именем поля внутри, как писать?
как это сделать на pl/perl pl/tcl я знаю, а вот в pl/pgsql как записывается и возможно ли вообще?нет невозможно.
...
Рейтинг: 0 / 0
19.08.2008, 13:03
    #35494633
chAlx
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как в функции на plpgsql использовать название поля из переменной?
[/quot]нет невозможно.[/quot]
Даже с использованием execute и создания новой функции? Непонятно, чем это отличается от "неименованных блоков" ..
...
Рейтинг: 0 / 0
19.08.2008, 13:05
    #35494637
chAlx
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как в функции на plpgsql использовать название поля из переменной?
нет невозможно.
Даже с использованием execute и создания новой функции? Непонятно, чем это отличается от "неименованных блоков" ..
...
Рейтинг: 0 / 0
19.08.2008, 18:10
    #35495669
Ёш
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как в функции на plpgsql использовать название поля из переменной?
chAlx нет невозможно.
Даже с использованием execute и создания новой функции? Непонятно, чем это отличается от "неименованных блоков" ..отличается пространством видимости. внутри execute блока локальные переменные родительской функции не доступны. другими словами, если написать
Код: plaintext
execute 'select new.' || 'field1'; 
то будет ругань типа
авторERROR: колонка "field1" не существует
или
авторERROR: NEW использован в запросе не являющемся правилом

но это легко обходится с помощью других языков :)
...
Рейтинг: 0 / 0
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / как в функции на plpgsql использовать название поля из переменной? / 5 сообщений из 5, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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