IBM attempted to become compatible with the DBI spec with their latest release,
but seem to have failed. This tweak fixes support for all versions of the DBD.
Revision history for Perl extension DBIx::Class::Schema::Loader
+ - Fix table listing with DBD::DB2 >= 1.85 (RT#91764)
+
0.07038 2013-11-20
- Allow coderef maps to call back into the hashref mapping code
- Fix MySQL column info detection with multiple schemas (RT#82358)
}
-# DBD::DB2 doesn't follow the DBI API for ->tables
+# DBD::DB2 doesn't follow the DBI API for ->tables (pre 1.85), but since its
+# backwards compatible we don't change it.
+# DBD::DB2 1.85 and beyond default TABLE_NAME to '', previously defaulted to
+# '%'. so we supply it.
sub _dbh_tables {
my ($self, $schema) = @_;
- return $self->dbh->tables($schema ? { TABLE_SCHEM => $schema } : undef);
+ return $self->dbh->tables($schema ? { TABLE_SCHEM => $schema, TABLE_NAME => '%' } : undef);
}
sub _columns_info_for {