Re: DBD::Oracle Schema different than User question

Charles Jardine <[email protected]>
Newsgroups gmane.comp.lang.perl.modules.dbi.general
Message-ID <[email protected]>
On 12/11/12 21:27, Kevin L. Kane wrote:
> Yes I understand that what I am trying to do is "broken" from a Oracle
> perspective.  The specific issue I am running into is that my
> application environment is only allowed to connect to the DB as one
> user/schema.  I want to use dbicdump on other schemas however, and its
> not just like a couple.  Its going to be over 50.  So creating a
> trigger in the DB to switch my schema on login is not really feasible,
> Id like to be able to automate it more easily.  Passing a schema= to
> the connect string seemed like the best option.

You can change the default schema at any time after connecting to an Oracle
database by:

    $dbh->do("alter session set current_schema=$schema");

This changes the default schema used in subsequent DML (Data Manipulation
Language) statements which use partially qualified object names.

I can't see why changing this setting would have any effect on the behaviour
of  DBIx::Class::Schema::Loader, since this module will obtain all its data
from the  Data Dictionary, in schema SYS. You do not get the description
of a schema by querying objects in the schema itself.

If dbicdump does not provide a way of specifying a schema name different 
from
the user name, it needs fixing.

-- 
Charles Jardine - Computing Service, University of Cambridge
[email protected]    Tel: +44 1223 334506, Fax: +44 1223 334679
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.