Beefy Boxes and Bandwidth Generously Provided by pair Networks
Clear questions and runnable code
get the best and fastest answer
 
PerlMonks  

Class::DBI::Loader and Postgres schemas

by srdst13 (Pilgrim)
on Oct 05, 2005 at 14:49 UTC ( #497618=perlquestion: print w/ replies, xml ) Need Help??
srdst13 has asked for the wisdom of the Perl Monks concerning the following question:

I have a rather large postgres database with multiple schemas in it. I would like to use Class::DBI::Loader to autogenerate the Class::DBI classes, but only for a single schema. Under DBI, I would typically do something like:
$dbh->do("set search_path to $SCHEMA")
to limit access to a given schema. Is there a way to do this with Class::DBI::Loader?

Thanks,
Sean

Comment on Class::DBI::Loader and Postgres schemas
Download Code
Replies are listed 'Best First'.
Re: Class::DBI::Loader and Postgres schemas
by ides (Deacon) on Oct 05, 2005 at 15:39 UTC
    Not currently, but it appears you can hack it to work. In Class::DBI::Loader::Pg.pm there is a line:
    return $dbh->tables( undef, "public", "", "table", { noprefix => 1, pg_noprefix => 1 } );
    Replace the "public" with the name of your schema and it should work as you want.

    UPDATE: I've sent a patch off to the maintainer for this so hopefully it will be in the next release for you.

    Frank Wiles <frank@wiles.org>
    http://www.wiles.org

      Always good to hack. Thanks for sending off the patch. I guess it should also be possible to override db_main using another base class (?), but I haven't tried that yet.

      Sean

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: perlquestion [id://497618]
Approved by Corion
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others contemplating the Monastery: (13)
As of 2015-07-31 17:08 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    The top three priorities of my open tasks are (in descending order of likelihood to be worked on) ...









    Results (279 votes), past polls