Re: [gnome-db] Oracle, Table Names and Progress



Following my last message in which I wrote:

> Is this what the SCHEMA_DATABASES category is supposed to do - offer
> different sets of tables/views which are available without changing
> the connection to the server (including who we are logged in as)?  If
> this is the case then we have a nice solution to the business of table
> names, but it does leave the question as to what the create_database
> and drop_database methods are supposed to do in the case of Oracle as,
> for what we are proposing, these would amount to creating and dropping
> users.

I read the following by Rodrigo Moya <rodrigo gnome-db org>:

> We already have such things, such as postgres' namespaces and parent
> tables. For Oracle, the thing to do is just to add the extra bits to
> the libgda API, and have the others providers just ignore that.

I wonder if the namespaces feature Rodrigo refers to isn't closer to
what we're trying to do with Oracle - I can't be sure because I don't
know too well how it works with postgres.

I have looked at the postgres provider and can already see one problem
with implementing this for Oracle - the name of the namespace is
provided to the GDA_CONNECTION_SCHEMA_TABLES call, but then not supplied
to the GDA_CONNECTION_SCHEMA_FIELDS call, so we are assuming that even
with changing tablespace names the table names remain distinct which
isn't the case with Oracle (is it the case with postgress - what is the
point of namesspaces otherwise?) so we would still have problems with
duplicate table names.  For this to work with Oracle we would need
either a change_namespace call, or a namespace parameter to many of the
GDA_CONNECTION_SCHEMA calls - at the moment probably these ones:

  * GDA_CONNECTION_SCHEMA_INDEXES
  * GDA_CONNECTION_SCHEMA_FIELDS
  * GDA_CONNECTION_SCHEMA_PROCEDURES
  * GDA_CONNECTION_SCHEMA_SEQUENCES
  * GDA_CONNECTION_SCHEMA_TABLES
  * GDA_CONNECTION_SCHEMA_TRIGGERS
  * GDA_CONNECTION_SCHEMA_VIEWS

and maybe also:

  * GDA_CONNECTION_SCHEMA_AGGREGATES
  * GDA_CONNECTION_SCHEMA_TYPES

Steve.





[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]