Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Передача таблицы в функцию
|
|||
|---|---|---|---|
|
#18+
Привет всем! Вопрос: можно ли (и как) передать в функцию в качестве аргумента набор данных фиксированной структуры для дальнейшей манипуляции с ним при помощи SQL? Перевожу проект с MSSQL на PG, там нет такой возможности, приходится работать через временные таблицы, это не очень хорошо так как приводит к перекомпиляции процедур и вообще не очень красиво. Говорят что в Оракле такое возможно... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.04.2007, 11:04 |
|
||
|
Передача таблицы в функцию
|
|||
|---|---|---|---|
|
#18+
Можно передавать массивом.. а Можно передавать RefCursor читай 37.8. Cursors ... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.04.2007, 20:19 |
|
||
|
Передача таблицы в функцию
|
|||
|---|---|---|---|
|
#18+
массив может быть только простых (базовых) типов, массивы user-defined типов не поддерживаются (пока?). "продолжая собирать FAQ" http://sql.ru/forum/actualthread.aspx?tid=395957#3827963 (Минифак по форуму sql.ru/POSTGRESQL) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.04.2007, 09:57 |
|
||
|
Передача таблицы в функцию
|
|||
|---|---|---|---|
|
#18+
авторМожно передавать RefCursor читай 37.8. Cursors ... С курсором, насколько я понимаю, можно работать только по одной записи, сбрасываемой в переменные, или есть возможность работать с ним как с таблицей, используя SQL select, update и т.д.? Похоже что придется все-таки использовать временные таблицы. :( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.04.2007, 15:17 |
|
||
|
Передача таблицы в функцию
|
|||
|---|---|---|---|
|
#18+
С учетом скорости работы Postgresql с курсорами и того, что триггеры обрабатываю только одну запись, похоже что RefCursor окажется вполне приемлемым вариантом. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.05.2007, 11:35 |
|
||
|
Передача таблицы в функцию
|
|||
|---|---|---|---|
|
#18+
Набор данных фиксированной структуры может возвращать другая функция, результаты которой обрабатывать в цикле, к примеру. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.05.2007, 12:34 |
|
||
|
Передача таблицы в функцию
|
|||
|---|---|---|---|
|
#18+
Misha TyurinНабор данных фиксированной структуры может возвращать другая функция, результаты которой обрабатывать в цикле, к примеру. Речь о том чтобы именно передавать набор, а не возвращать его. То есть готовится набор данных и передается на обработку в другую (общую, унифицированную) процедуру. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.05.2007, 15:56 |
|
||
|
Передача таблицы в функцию
|
|||
|---|---|---|---|
|
#18+
Вадим ПрудивусТо есть готовится набор данных и передается на обработку в другую (общую, унифицированную) процедуру. Я так и представляю, что одна функция (А) готовит набор данных (она возвращает setof), а другая (Б) - может его использовать. Как вариант, она (функция Б) может в цикле перебирать выход с функции А, или его подджойнивать в запросе, или еще как. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.05.2007, 12:23 |
|
||
|
Передача таблицы в функцию
|
|||
|---|---|---|---|
|
#18+
IMHO Для таких целей лучше всего использовать встроенные языки - PLJava, perl,python etc... Соответственно вы можете воспользоваться всей мощью языка для передачи сложных структур между функциями... И даже организовать поточную обработку - когда одня функция - обрабатывает потоком поступающие данные- передвая их в другую функцию - также потоком и так далее. Причем функции можно заставить работать в разных нитях или процессах.. Так-что - присмотритесь в встроенным языкам- они того стоят!!!.. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.05.2007, 12:36 |
|
||
|
Передача таблицы в функцию
|
|||
|---|---|---|---|
|
#18+
domanixТак-что - присмотритесь в встроенным языкам- они того стоят!!!.. Можно ваще вокруг оглянуться - там много чего интересного есть, в мире. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.05.2007, 12:46 |
|
||
|
|

start [/forum/topic.php?fid=53&msg=34502235&tid=2005484]: |
0ms |
get settings: |
10ms |
get forum list: |
18ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
38ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
56ms |
get tp. blocked users: |
1ms |
| others: | 257ms |
| total: | 400ms |

| 0 / 0 |
