172 похожих чатов

Коллеги, приветствую. Наткнулись тут на проблему с INSERT INTO … RETURNING

id при Inheritance (используем pg_partman).

Необходимо придумать какой-то запрос, который универсально бы работал и для секционированных (с триггером на insert) и для стандартных таблиц.

Наворотил такую, вроде рабочую схему:
create table public.test(
id SERIAL PRIMARY KEY,
num SMALLINT NOT NULL);

with insert_res as (
insert into public.test (num) values (1) returning id )
select currval('public.test_id_seq') as id from (values(1)) as qid (id)
left join insert_res on insert_res.id=qid.id;
Кто что думает о таком способе? Как упростить? Есть ли подводные камни?

2 ответов

12 просмотров

Аудитория еще не проснулась )

Привет! Keith по ссылке выше описал, почему это не работает триггере - фактически вставляемая строка не попадает в родительскую таблицу. И насколько я понимаю, в pg_partman эту проблему тоже не решили

Похожие вопросы

Обсуждают сегодня

30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
Как передать управляющий символ в открытую через CreateProcess консоль? Собсна, есть процедура: procedure TRedirectThread.WriteData(Data: OEMString); var Written: Cardinal;...
Serjone
6
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Всем привет! Имеется функция: function IsValidChar(ch: UTF8Char): Boolean; var i: Integer; ValidChars: AnsiString; begin ValidChars := 'abcdefghijklmnopqrstuvwxyzABCDE...
Евгений
44
Карта сайта