Список ссылочной целостности таблиц для усечения
Мне было интересно, если есть быстрый и эффективный способ заказать таблицы в PostgreSQL
так что, если я побежал DELETE FROM <table_name>
все они преуспеют, не нарушая ссылочную целостность.
Например, если таблицы были USER -->* ACCOUNT -->* TRANSACTION
Я хочу удалить сначала TRANSACTION, затем ACCOUNT, затем USER, потому что любой другой заказ нарушит отношения внешнего ключа.
Я делал это раньше с другими БД, запрашивая системные таблицы и создавая дерево ссылочной целостности в памяти какого-либо языка сценариев. Но мне было интересно, есть ли быстрый (э) способ составить такой список.
1 ответ
Как насчет определения внешних ключей, которые удаляются каскадом, так что вам не нужно это делать?