таблице есть данные. Все ок, создал таблицы (партиции), написал функцию и сделал триггер, перенес данные по партициям, теперь нужно удалить данные из мастер таблицы, и тут шиш, удаление записей невозможно из-за ограничений других таблиц, которые ссылаются на мастер таблицу. Вопрос как вы обходили этот момент в своей практике, или я что-то не так делаю? Версия постгри 13.
попробуйте использовать pg_partman
и еще вопрос, default таблицу создали ?
Спасибо, посмотрю.
что значит дефолт таблица?
извините, не то написал.
> Ребята, делаю партицирование таблицы Зачем? > естественно наследованием Ничего "естественного" тут нет — inheritance место на свалке истории, стоит прекратить им заниматься и перейти на декларативное. > т.к. в таблице есть данные. А мы-то все только пустые таблицы партиционируем... нет, ну в самом деле. ;) > Вопрос как вы обходили этот момент в своей практике, или я что-то не так делаю? Да примерно всё. :( Этот "момент" (если я правильно понял, о чём речь) описан прямо в ограничениях inheritance в документации, и выхода тупо нет (разве что удалить все FK).
Спасибо за ответ, не смотря на скрытую агрессию) Верно ли я понял, правильно будет создать новую таблицу используя декларативный подход, и мигрировать данные в неё?
Вам намекают на то, что сперва нужно хорошенько подумать о том, а нужно ли оно — партиционирование...
Обсуждают сегодня