Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / странное сообщение при повторном вызове функции / 7 сообщений из 7, страница 1 из 1
02.12.2003, 18:09
    #32341181
MaximZ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
странное сообщение при повторном вызове функции
Есть функция, которая строит дерево форума и выдает его в виде таблицы. В самйо функции созадется две временные таблицы. При выходе из функции они уничтожаются, на всякий случай.
Если в одной сесси соединения два раза подряд вызвать эту функцию, то первый раз все нормально, а второй раз выдает следующее сообщение:

WARNING: Error occurred while executing PL/pgSQL function p_getmesstree
WARNING: line 27 at SQL statement

ERROR: pg_class_aclcheck: relation 84473 not found

в строке 27 идет заполнение одной из временных таблиц значениями.
По идее все должно быть нормально, ведь в конце функции таблицы уничтожаются. Но почему то не работает.
Если закрыт соединение ,и опять открыть, опять первый вызов работает нормально, а второй выдает такое сообщение.
...
Рейтинг: 0 / 0
02.12.2003, 18:37
    #32341207
Sad Spirit
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
странное сообщение при повторном вызове функции
работай с временными таблицами в функциях через EXECUTE.
...
Рейтинг: 0 / 0
02.12.2003, 18:54
    #32341225
MaximZ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
странное сообщение при повторном вызове функции
но вообще-то это идеологически не правильно.
И блин, еще раза в два увеличивает размер текста функции. Я и так в связи с гиморойной работой массивов сделал это через еще одну временную таблицу. а тут еще и запросы строить. Не такой уж этот plsql и гибкий язык в плане програмирования.
...
Рейтинг: 0 / 0
03.12.2003, 10:17
    #32341581
Stellar.
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
странное сообщение при повторном вызове функции
Язык отличный. Писать на нем надо уметь. В большинстве случаев временные таблицы внутри процедуры не нужны.

Полсему пример кода в студию и описание задачи.
...
Рейтинг: 0 / 0
03.12.2003, 11:46
    #32341783
MaximZ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
странное сообщение при повторном вызове функции
Не, кода не будет. Я и сам знаю что можно обойтись без временных таблиц, но в данном случае мне удобнее их использовать и получить из функции конечный результат в нужном виде.
К тому же если есть возможность создавать временные таблицы, то почему я не должен ее использовать.
...
Рейтинг: 0 / 0
03.12.2003, 11:55
    #32341796
Stellar.
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
странное сообщение при повторном вызове функции
Почему так, описано в документации. В разделе, где говорится о компиляции ХП.
...
Рейтинг: 0 / 0
03.12.2003, 11:56
    #32341799
Stellar.
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
странное сообщение при повторном вызове функции
Имеется в виду про использование временных таблиц.
...
Рейтинг: 0 / 0
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / странное сообщение при повторном вызове функции / 7 сообщений из 7, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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