Я работаю с большой производственной базой данных postgresql. Иногда возникает необходимость отладки с использованием реальных производственных данных. Из-за размера базы данных нецелесообразно передавать весь дамп на наши рабочие станции разработки.
Есть ли способ, возможно, с использованием information_schema, извлечь отдельную запись, а также:
все записи, на которые ссылается эта запись, рекурсивно каскадно
все записи, которые относятся к этой записи (с предыдущим критерием, применяемым также к этим записям)
Возможно, лучше всего это проиллюстрировать на примере:
Если у нас есть следующие таблицы:
человек (от ФК до адресов)
Адреса (от ФК до городов)
Город
Сотрудники (fks to Employee_Types, People)
Employee_Types
Скажите, что я хочу "извлечь" конкретную запись из таблицы People. Я хотел бы получить:
(1) запись в Люди
(2) запись в адресах, на которые ссылается запись People в (1)
(3) запись в городах, на которую ссылается запись адреса в (2)
(4) любая запись сотрудников, которая ссылается на запись сотрудников в (1)
(5) записи Employee_Types, на которые ссылаются записи Employees, найденные в (4)
Есть идеи?