Thread: Need a command to take the backup of the child tables along with itsmaster table.

Need a command to take the backup of the child tables along with itsmaster table.

From
Raghavendra Rao J S V
Date:
Hi All,

We have one master table and multiple child tables (dependent tables)  associated with it.

 

While taking the backup of the master table , I would like to take the backup of all its child (dependent) tables backup also.

 

Please guide me how to take the backup of the  master table and its dependent tables using pg_dump command.


--
Regards,
Raghavendra Rao J S V
Mobile- 8861161425
On 1/24/19 3:40 AM, Raghavendra Rao J S V wrote:
Hi All,

We have one master table and multiple child tables (dependent tables)  associated with it.

 

While taking the backup of the master table , I would like to take the backup of all its child (dependent) tables backup also.

 

Please guide me how to take the backup of the  master table and its dependent tables using pg_dump command.


Do you know the list of dependent tables?  If so, you can list them in the "pg_dump --table=" clause.

If not, you'll have to do some bash magic in parsing the "Foreign-key constraints:" clause of "\d your_table_name" and stuff them in the "pg_dump --table=" clause.


--
Angular momentum makes the world go 'round.

Re: Need a command to take the backup of the child tables along withits master table.

From
Francisco Olarte
Date:
On Thu, Jan 24, 2019 at 11:01 AM Ron <ronljohnsonjr@gmail.com> wrote:
> If not, you'll have to do some bash magic in parsing the "Foreign-key constraints:" clause of "\d your_table_name"
andstuff them in the "pg_dump --table=" clause.
 

That would be hard. There is an option to make psql show the queries
it uses to implement \d. Reading that  it is normally easy to buld a
query which lists the dependents by creative imitation and feed it to
psql ( instead of the \d ) with the approppiate context setting
options to spit the table names, or even the --table="xx" list,
including schemas and other niceties.

And if his shell is not bash, but CMD.EXE or other similar thing,
parsing \d output will be hell.

Francisco Olarte.