Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Как в pl/pgsql вытащить из переменной типа record значение поля по его строковому имени?
|
|||
|---|---|---|---|
|
#18+
Собственно вот такой вопрос. Сразу поясню зачем это надо - есть триггерная функция на plpgsql, которая должна вешаться на любые таблицы с любыми именами столбцов. При создании триггера на таблицу в качестве параметров триггерной функции указываются поля, которые нужно обрабатывать для этой таблицы. Как можно из NEW или OLD получить значения полей, зная их строковые имена из параметров? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.11.2008, 22:22 |
|
||
|
Как в pl/pgsql вытащить из переменной типа record значение поля по его строковому имени?
|
|||
|---|---|---|---|
|
#18+
D13Собственно вот такой вопрос. Сразу поясню зачем это надо - есть триггерная функция на plpgsql, ... Как можно из NEW или OLD получить значения полей, зная их строковые имена из параметров?никак. используйте другой язык. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.11.2008, 00:02 |
|
||
|
Как в pl/pgsql вытащить из переменной типа record значение поля по его строковому имени?
|
|||
|---|---|---|---|
|
#18+
Как оказалось есть способ, но он правда скорее из разряда грязных хаков... Код: plaintext 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.11.2008, 23:02 |
|
||
|
Как в pl/pgsql вытащить из переменной типа record значение поля по его строковому имени?
|
|||
|---|---|---|---|
|
#18+
здорово ! :) сконвертировать запись в строку и потом обратно мне честно говоря в голову не приходило %) на самом деле есть ещё способ - через таблицу, а из таблицы уже можно по названию поля вытащить: Код: plaintext 1. только непонятно как генерировать уникальное название таблицы, если допустим один и тот же тригер несколько раз вызывается в транзакции. можно перед созданием дропать, Код: plaintext 1. 2. но непонятно как быть если тригер рекурсивно может вызываться... отслеживать при этом ещё и в какой момент _foo можно удалять как то геморойно... проще perl использовать: Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.11.2008, 00:38 |
|
||
|
|

start [/forum/topic.php?fid=53&msg=35653116&tid=2003880]: |
0ms |
get settings: |
7ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
36ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
39ms |
get tp. blocked users: |
1ms |
| others: | 211ms |
| total: | 324ms |

| 0 / 0 |
