in reply to DBI false error

There are a few things that strike me I think you should fix first. 1. add use warnings 2. you use "$dbh->prepare(xx) or {}" and $sth->execute() or {} but you cannot put a block after or, it looks like a hash (if you enabled warnings you'd have seen that) 3. RaiseError => 1 negates having to do all those xxx or error tests 4. as RaiseError is enabled if your script did not die then there must be something wrong with your code testing for an error.