Hi Scott,
    I guess my real issue is not having to explicitly
    list data_type and size in my schema for ORACLE but
    how to work around deploy() producing "ON UPDATE CASCADE"
    which, apparently, isn't supported by ORACLE:

http://www.oreview.com/9704dalb.htm
http://asktom.oracle.com/tkyte/update_cascade/index.html

Scott Pham (scpham) wrote:

What does your other 2 tables look like? Can you post the schema
definition for tables Runner::Model::TestGroup
Runner::Model::Host

   Fancy bumping into you here ;^)

   Here are the definitions of my Host and TestGroup
   modules:

Host:
package Runner::Model::Host; use base qw/DBIx::Class/; __PACKAGE__->load_components(qw/PK::Auto Core/); __PACKAGE__->table('hosts'); __PACKAGE__->add_columns( id => { data_type => 'integer', is_auto_increment => 1, }, creation => { data_type => 'datetime', }, modification => { data_type => 'datetime', }, name => { data_type => 'varchar', size => 255, is_unique => 1, }, manufacturer => { data_type => 'varchar', is_nullable => 1, size => 255, }, product => { data_type => 'varchar', size => 255, is_nullable => 1, }, version => { data_type => 'varchar', size => 255, is_nullable => 1, }, serial => { data_type => 'text', is_nullable => 1, }, ram => { data_type => 'varchar', size => 255, is_nullable => 1, }, cpuModel => { data_type => 'varchar', size => 255, is_nullable => 1, }, cpuCount => { data_type => 'integer', }, cpuCoreCount => { data_type => 'integer', }, cpuSpeed => { data_type => 'varchar', size => 255, is_nullable => 1, }, os => { data_type => 'text', is_nullable => 1, }, arch => { data_type => 'varchar', size => 255, is_nullable => 1, }, public => { data_type => 'text', is_nullable => 1, }, private => { data_type => 'text', is_nullable => 1, }, ); __PACKAGE__->set_primary_key('id'); __PACKAGE__->has_many('host_to_testgroups' => 'Runner::Model::HostToTestGroup', 'HostID'); __PACKAGE__->many_to_many(testgroups => 'host_to_testgroups', 'TestGroupID'); __PACKAGE__->has_many('results' => 'Runner::Model::Result');
TestGroup:
package Runner::Model::TestGroup; use base qw/DBIx::Class/; __PACKAGE__->load_components(qw/PK::Auto Core/); __PACKAGE__->table('testgroups'); __PACKAGE__->add_columns( id => { data_type => 'integer', is_auto_increment => 1, }, creation => { data_type => 'datetime', }, modification => { data_type => 'datetime', }, name => { data_type => 'varchar', size => 255, is_unique => 1, }, ); __PACKAGE__->set_primary_key('id'); __PACKAGE__->has_many('host_to_testgroups' => 'Runner::Model::HostToTestGroup',\ 'TestGroupID'); __PACKAGE__->many_to_many('hosts' => 'host_to_testgroups', 'HostID');
__PACKAGE__->has_many('testgroup_to_test' => 'Runner::Model::TestGroupToTest', \
'TestGroupID'); __PACKAGE__->many_to_many('tests' => 'testgroup_to_test', 'TestID');
        I can send you the rest of the schema directly if you like.
        Here's are the link tables HostToTestGroup and TestGroupToTest too:

HostToTestGroup:

package Runner::Model::HostToTestGroup; use base qw/DBIx::Class/; __PACKAGE__->load_components(qw/PK::Auto Core/); __PACKAGE__->table('host_to_testgroup'); __PACKAGE__->add_columns( HostID => { data_type => 'integer', }, TestGroupID => { data_type => 'integer', } ); #__PACKAGE__->add_columns(qw/HostID TestGroupID/); __PACKAGE__->set_primary_key(qw/HostID TestGroupID/); __PACKAGE__->belongs_to('HostID' => 'Runner::Model::Host'); __PACKAGE__->belongs_to('TestGroupID' => 'Runner::Model::TestGroup');
TestGroupToHost:
package Runner::Model::TestGroupToTest; use base qw/DBIx::Class/; __PACKAGE__->load_components(qw/PK::Auto Core/); __PACKAGE__->table('testgroup_to_test'); __PACKAGE__->add_columns(qw/TestGroupID TestID/); TestGroupID => { data_type => 'integer', }, TestID => { data_type => 'integer', } ); __PACKAGE__->set_primary_key(qw/TestGroupID TestID/); __PACKAGE__->belongs_to('TestID' => 'Runner::Model::Test'); __PACKAGE__->belongs_to('TestGroupID' => 'Runner::Model::TestGroup');
        Cheers,

        Doug



_______________________________________________
List: http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/dbix-class
IRC: irc.perl.org#dbix-class
SVN: http://dev.catalyst.perl.org/repos/bast/DBIx-Class/
Searchable Archive: http://www.grokbase.com/group/[EMAIL PROTECTED]

Reply via email to