Steve Holden <[EMAIL PROTECTED]> wrote: > [EMAIL PROTECTED] wrote: >> I am trying to discover the schema of a PostgreSQL database >> programatically at runtime. >> >> I'm using psycopg (I assume that's still the best library). Is there a >> way to query the schema other than opening a system pipe like "psql -d >> '\d'", "psql -d '\d tablename'", etc.? >> >> DBIAPI 2.0 shows that the Cursor object has a .description method that >> describes rows, and there's the Type object. But neither of these >> appear to give you table names. >> >> Is there something else I should look at? > > Yes, but as with so many of these things you'll have to accept it's a > platform-specific (i.e. non-portable) solution, and it requires that you > are running PostgreSQL 7.4 or higher. Under those circumstances you can > query the metadata through the information schema. <snip>
It's not *that* non-portable - information_schema is a standard part of ANSI SQL and is supported by several RDBMSes. -- Ben Hutchings It is easier to write an incorrect program than to understand a correct one. -- http://mail.python.org/mailman/listinfo/python-list