X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=lib%2FDBIx%2FClass%2FStorage%2FDBI%2FODBC%2FDB2_400_SQL.pm;h=e17715cec0447b188eff4015f59168b4e7a4d74c;hb=4a0eed52f392b2e135385d0c06b06160200f3772;hp=e84c0879faaf5b8af4db54fdeae788b75941a1c9;hpb=a9f32dbced12b2b6c4f8b8a7aa142d5922350830;p=dbsrgits%2FDBIx-Class.git diff --git a/lib/DBIx/Class/Storage/DBI/ODBC/DB2_400_SQL.pm b/lib/DBIx/Class/Storage/DBI/ODBC/DB2_400_SQL.pm index e84c087..e17715c 100644 --- a/lib/DBIx/Class/Storage/DBI/ODBC/DB2_400_SQL.pm +++ b/lib/DBIx/Class/Storage/DBI/ODBC/DB2_400_SQL.pm @@ -1,37 +1,13 @@ package DBIx::Class::Storage::DBI::ODBC::DB2_400_SQL; + use strict; use warnings; -use base qw/DBIx::Class::Storage::DBI::ODBC/; - -sub last_insert_id -{ - my ($self) = @_; - - $self->dbh_do(sub { - my $dbh = shift; - - # get the schema/table separator: - # '.' when SQL naming is active - # '/' when system naming is active - my $sep = $dbh->get_info(41); - my $sth = $dbh->prepare_cached( - "SELECT IDENTITY_VAL_LOCAL() FROM SYSIBM${sep}SYSDUMMY1", {}, 3); - $sth->execute(); - - my @res = $sth->fetchrow_array(); - - return @res ? $res[0] : undef; - }); -} - -sub _sql_maker_opts { - my ($self) = @_; - - $self->dbh_do(sub { - { limit_dialect => 'FetchFirst', name_sep => shift->get_info(41) } - }); -} +use base qw/ + DBIx::Class::Storage::DBI::ODBC + DBIx::Class::Storage::DBI::DB2 +/; +use mro 'c3'; 1; @@ -40,28 +16,17 @@ sub _sql_maker_opts { DBIx::Class::Storage::DBI::ODBC::DB2_400_SQL - Support specific to DB2/400 over ODBC -=head1 SYNOPSIS - - # In your table classes - __PACKAGE__->load_components(qw/PK::Auto Core/); - __PACKAGE__->set_primary_key('id'); - - =head1 DESCRIPTION -This class implements support specific to DB2/400 over ODBC, including -auto-increment primary keys, SQL::Abstract::Limit dialect, and name separator -for connections using either SQL naming or System naming. - - -=head1 AUTHORS +This is an empty subclass of L. -Marc Mims C<< >> +=head1 AUTHOR -Based on DBIx::Class::Storage::DBI::DB2 by Jess Robinson. +See L and L. =head1 LICENSE You may distribute this code under the same terms as Perl itself. =cut +# vim:sts=2 sw=2: