powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / REST + transactions
2 сообщений из 2, страница 1 из 1
REST + transactions
    #39972930
s u
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Имеем PostgreSQL 12.1 (Ubuntu 12.1-1.pgdg18.04+1) on x86_64-pc-linux-gnu, compiled by gcc (Ubuntu 7.4.0-1ubuntu1~18.04.1) 7.4.0, 64-bit

Пишется функция-обертка для RESTful запросов, которая будет вызываться из middle tier, обрабатывать данные и возвращать соответствующий результат.

в общем виде это выглядит так

Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
CREATE OR REPLACE FUNCTION f_webserivce(in_request_tx character varying, in_method_tx character varying, in_payload_j jsonb)
 RETURNS jsonb
 LANGUAGE plpgsql
AS $function$
  declare
       v_response_j jsonb = jsonb ('{}');
  begin
        if in_method_tx = 'POST' and in_request_tx = 'postUser' then
            v_response_j = f_doSomething (in_payload_j);
        end if;
        return v_response_j;
    END;
$function$
;



Соответственно запросы могут быть как GET так и POST/PUT и тд

функция f_doSomething обработает данные и создаст\обновит запись в БД.

на данный момент вопрос стоит - как COMMITить данные. если я правильно понял то в ф-ции commit не прокатит. можно переключить БД в autocommit конечно, но правильный ли это подход? Я так понял что autonomous transaction не поддерживаются.



Пришел в PostgreSQL из Oracle, это наверное и накладывает отпечаток.

Спасибо
...
Рейтинг: 0 / 0
REST + transactions
    #39972937
Melkij
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
s u
можно переключить БД в autocommit конечно

Что вы переключать-то задумали и зачем вам тут autonomous transaction?

Функция в postgresql бывает только в транзакции. Явно открытой приложением и тогда это обязанность приложения сказать commit или rollback. Или в неявной транзакции на выполняемый запрос если вы не сказали begin. Всё. Другого нет.
...
Рейтинг: 0 / 0
2 сообщений из 2, страница 1 из 1
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / REST + transactions
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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