For what its worth, this is what sqlt comes up with
package DBI;
#
# Created by SQL::Translator::Producer::ClassDBI
# Created on Fri May 21 14:05:57 2004
#
use strict;
use base 'Class::DBI::mysql';
DBI->set_db('Main', 'dbi:mysql:_', '', '');
# -------------------------------------------------------------------
package baseitems;
use base 'DBI';
use Class::DBI::Pager;
baseitems->set_up_table('baseitems');
#
# Primary key accessor
#
sub baseitems {
shift->id
}
sub itemss {
return shift->items_id
}
baseitems->has_many(
'items_id', 'items' => 'id'
);
# -------------------------------------------------------------------
package items;
use base 'DBI';
use Class::DBI::Pager;
items->set_up_table('items');
#
# Primary key accessor
#
sub items {
shift->id
}
items->has_a(
id => 'baseitems'
);
sub items {
return shift->id
}
sub codess {
return shift->codes_id
}
items->has_many(
'codes_id', 'codes' => 'id'
);
items->has_many(
'codes_subid', 'codes' => 'subid'
);
# -------------------------------------------------------------------
package codes;
use base 'DBI';
use Class::DBI::Pager;
codes->set_up_table('codes');
codes->has_a(
id => 'items'
);
sub codes {
return shift->id
}
codes->has_a(
subid => 'items'
);
sub codes {
return shift->subid
}
1;