in reply to DBI and money columns

I haven't coded in the DBI for a while now. Nonetheless, I would try binding parameters using $sth->bind_param(). For instance, given that $dbh is a valid database handler:
$sth->prepare("UPDATE table SET column_1 = ? WHERE id = 1"); $sth->bind_param(1, 221783, { TYPE => SQL_VARCHAR }); $sth->execute();
According to Programming the Perl DBI, DBD::ODBC supports placeholders, so hopefully this will work.

This does not mean that the module supports money columns--you'll have to try the type_info() and type_info_all() methods, as in:

print $dbh->type_info_all();
This will (hopefully) return all the datatypes supported by Microsoft SQL Server and DBD::ODBC. I can't really answer for sure, as I do not use SQL Server or ODBC.

Hope this helps.