Class::DBI::Oracle - Extensions to Class::DBI for Oracle


  package Music::DBI;
  use base 'Class::DBI::Oracle';
  Music::DBI->set_db('Main', 'dbi:Oracle:tnsname', 'username', 'password');

  package Artist;
  use base 'Music::DBI';
  # ... see the Class::DBI documentation for details on Class::DBI usage


This is an extension to Class::DBI that currently implements:

        * A sequence fix for Oracle databases.
        * Automatic column name discovery.
        * Automatic primary key detection.

        * Sequence name guessing.

        * Proper aliasing of reserved words.

Instead of setting Class::DBI as your base class, use this.


The sequence guessing is just that. If your naming convention follows the defacto standard of TABLENAME_SEQ, and you only use one sequence per table, this will work.

The primary and column name detection lowercases all names found. This is probably what you want. If it's not, don't use set_up_table.


Teodor Zlatanov

Dan Sully <> added initial column, primary key and sequence finding.

Jay Strauss <> updated column, primary key, and sequence finding. Added aliasing reserved words


Class::DBI Class::DBI::mysql Class::DBI::Pg