#!/usr/bin/perl # use strict; use warnings; use DBI; my $dbh = DBI->connect( 'dbi:ODBC:prism72', 'sa', 'xxxx', { RaiseError => 1, } ); my $sth_master = $dbh->prepare("select [name] from master..sysdatabases"); $sth_master->execute(); my @dbs; while ( my $row = $sth_master->fetch() ) { push @dbs, $row->[0]; } $sth_master->finish(); my %tables; foreach my $db (@dbs) { my $sth_obj = $dbh->prepare(<execute(); while ( my $row = $sth_obj->fetch() ) { my $table = lc $row->[0]; if ( !exists $tables{$table} ) { $tables{$table} = []; } push @{ $tables{$table} }, $db; } $sth_obj->finish(); } foreach my $table ( keys %tables ) { if ( @{ $tables{$table} } > 1 ) { print "table $table is in databases @{$tables{$table}}\n"; } }