use strict; use warnings; use DBI; my $DBH = dbh() or die $@; my $story = qq(Otto und Franz gehen mit dem Hund Foo spazieren und treffen Boo); # Ohne Fehlerbehandlung $DBH->do("INSERT INTO test(text)VALUES(?)", {}, $story); # Mit Fehlerbehandlung eval{ $DBH->do("INSERT INTO test(text)VALUES(?)", {}, $story); }; # Frage $@ ab ob es einen Fehler gab. sub dbh{ my %cfg = ( base => 'myweb', host => 'localhost', port => 3306, user => '', pass => '', @_); return eval{ DBI->connect("DBI:mysql:$cfg{base}:$cfg{host}:$cfg{port}", $cfg{user}, $cfg{pass}, {RaiseError => 1, PrintError => 0} ); }; }