Re: Generating an XSD file from an existing database

From: Adrian Klaver <adrian(dot)klaver(at)aklaver(dot)com>
To: Blake McBride <blake1024(at)gmail(dot)com>, Rob Sargent <robjsargent(at)gmail(dot)com>
Cc: pgsql-general(at)postgresql(dot)org
Subject: Re: Generating an XSD file from an existing database
Date: 2015-12-06 22:46:18
Message-ID: 5664BABA.3010600@aklaver.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

On 12/06/2015 01:59 PM, Blake McBride wrote:
> On Sun, Dec 6, 2015 at 3:47 PM, Rob Sargent <robjsargent(at)gmail(dot)com
> <mailto:robjsargent(at)gmail(dot)com>> wrote:
>
>
> > On Dec 6, 2015, at 2:30 PM, Blake McBride <blake1024(at)gmail(dot)com
> <mailto:blake1024(at)gmail(dot)com>> wrote:
> >
> > Greetings,
> >
> > I need an XML specification for my exiting schema - an XSD file.
> Reading the docs I see schema_to_xml but I do not understand:
> >
> > A. Will that produce the XSD file I seek?
> >
> > B. I do not understand the documentation. Can I do this through
> psql? I need an exact example if possible.
> >
> > Thank you.
> >
> > Blake McBride
> >
> Yes, those functions are available through psql
> select schema_to_xml(<arglist>)
> and
> select schema_to_xmlschema(<arglist>) are what you’re after.
>
> Redirect the output of each into separate files.
>
>
> Thanks. My problem is understanding the arguments. I am hoping to get
> an exact example.
>
> Server: localhost
> Database: wmco
> Schema: public
>
> Once I am in psql, exactly what do I type? (I just don't understand the
> docs.)

<WARNING> Will produce a big file. On a relatively small database the
below created a 5.6 G file <WARNING>

\o schema_file.xml
select schema_to_xml('public', 't', 't', 'text');
\o

Explanation of above:
\o redirects further commands to the file specified.

Run xml function

\o resets output to stdout

If you want to use the table form, then:

\o cell_per.xml
select table_to_xml('cell_per'::regclass, 't', 't', 'text');
\o
>
> Thank you!
>
> Blake
>

--
Adrian Klaver
adrian(dot)klaver(at)aklaver(dot)com

In response to

Browse pgsql-general by date

  From Date Subject
Next Message Jim Nasby 2015-12-07 00:18:24 Re: Table with invalid page blocks
Previous Message Blake McBride 2015-12-06 21:59:25 Re: Generating an XSD file from an existing database