use strict;
use warnings;
use DBI;

# Konfiguration lesen
open(CFG,'<', 'connect-db') or die "Oops: $!\n";
chomp(my $username = <CFG>);
chomp(my $password = <CFG>);
chomp(my $database = <CFG>);
close(CFG);

# Zusammenbauen der Datasource: DBI/Modul/Datenbank/Host
my $dsn = 'DBI:mysql:'.$database.':localhost';  

# Nun der Connect
my $dbh = DBI->connect($dsn, $username, $password,
		                   { RaiseError => 1,
		                     PrintError => 1, 
		                     AutoCommit => 1}
		                  ) or die "Oops: $DBI::errstr\n";
		                  
my @tables = $dbh->tables();

print "Datenbank $database:\n";
foreach my $tab (@tables)
  { 
  print "$tab\n"; 
  my $sth = $dbh->prepare("SELECT * FROM $tab;");
  $sth->execute();
  my $num = $sth->{NUM_OF_FIELDS};
  print "   $num Felder:\n";
  foreach my $name(@{$sth->{NAME}})
    { print "      $name\n"; }
  }
$dbh->disconnect();
