in reply to MS Access/ODBC error: why??

Ah, the joy of interpolation variables into SQL. If one of your variables contains a quote, the resulting string is likely to not be a valid SQL command, and hence, your database will barf.

The solution is to use placeholders. Like this:

# Assume 'RaiseError' is set, and 'AutoCommit' is off. eval { my $sth = $db -> prepare (<<" --") INSERT INTO $Table[$II] VALUES (?, ?, ?, ?); -- $sth -> execute ($ID, $Itemname, $Firstbid, $Endingprice); }; if ($@) { $dbh -> rollback; die $@; } else { $dbh -> commit; }

This assumes that @Table contains valid table names.

Abigail