On Sun, May 31, 2009 at 6:46 PM, Markus Hoenicka
<markus.hoeni...@mhoenicka.de> wrote:
> Phil Longstaff writes:
>  > According to postgresql documentation, there is a standard information 
> schema
>  > which exists in all databases
>  > (http://www.postgresql.org/docs/8.3/interactive/information-schema.html).  
> Is
>  > there any easy way of having these extra tables *not* returned from
>  > dbi_conn_get_table_list() ?  I suppose I can always get the list and remove
>  > them, but it would be easier if they weren't returned in the first place.
>  >
>
> I see from the implementation of the dbd_list_tables() function that
> the pgsql driver removes all tables matching the regexp '^pg_'
> anyway. These appear to be additional schemas as well. This could be
> expanded to exclude 'information_schema' as well. Question is, should
> this be the default? Would anyone *want* these tables to be listed? I
> assume no one wants these, as they are implementation-specific to
> PostgreSQL and should not be returned by a database-independent
> function that lists all tables. I'm open to discussions.

The information_schema catalog/namespace/package/schema isn't really
an implementation-specific extension, it's defined by the SQL
standard.  AFAIK, all commercial and most OSS rdbms' support it these
days, and it's quite useful for discovering the layout of a database
instance.  Whether information_schema should be included by default is
debatable since it should (theoretically) be the same on every system
and therefore not require inclusion, but if an application wanted to
test for the existence of those objects in order to self-configure, it
think that is use-case enough for me to vote for inclusion.

As an aside, while not authoritative, I find
http://troels.arvin.dk/db/rdbms/ to be a good overview of
cross-database support for different features, and how that support
compares to the SQL standard.

-- 
Mike Rylander
 | VP, Research and Design
 | Equinox Software, Inc. / The Evergreen Experts
 | phone:  1-877-OPEN-ILS (673-6457)
 | email:  mi...@esilibrary.com
 | web:  http://www.esilibrary.com

------------------------------------------------------------------------------
OpenSolaris 2009.06 is a cutting edge operating system for enterprises 
looking to deploy the next generation of Solaris that includes the latest 
innovations from Sun and the OpenSource community. Download a copy and 
enjoy capabilities such as Networking, Storage and Virtualization. 
Go to: http://p.sf.net/sfu/opensolaris-get
_______________________________________________
Libdbi-drivers-devel mailing list
Libdbi-drivers-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/libdbi-drivers-devel

Reply via email to