Wyodrębnianie wierszy z bazy danych, w tym wierszy zależnych
Chciałbym wygenerować ciągi wstawiania dla wiersza w mojej bazie danych Oracle, łącznie ze wszystkimi wierszami zależnymi w innych tabelach (i ich wierszach zależnych).
Przykład:
CREATE TABLE a (
a_id number PRIMARY KEY,
name varchar2(100)
);
CREATE TABLE b (
b_id number PRIMARY KEY,
a_id number REFERENCES a(a_id)
);
Kiedy wyodrębniam wiersz z a_id = 1, wynikiem powinien być ciąg wstawiania dla tego wiersza i wierszy zależnych:
INSERT INTO a(a_id, name) VALUES (1, 'foo');
INSERT INTO b(b_id, a_id) VALUES (1, 1);
INSERT INTO b(b_id, a_id) VALUES (2, 1);
INSERT INTO b(b_id, a_id) VALUES (3, 1);
Powodem, dla którego chcę to zrobić, jest to, że mam dużą bazę danych z wieloma różnymi tabelami i ograniczeniami między tym a chciałbym wyodrębnić mały podzbiór danych jako dane testowe.