in reply to [untitled node, ID 193356]

You aren't quoting the column values for DBI. The simplest way to force that is to rewrite the query with placeholders:

sub db_update_field { my $table = shift; my $record = shift; my $field = shift; my $value = shift; my $dbh = dbconnect(); my $db_update_field = $dbh->prepare ( "UPDATE $table SET $field = ? WHERE id = ?" ); $db_update_field->execute ($value, $record); }
The alternative is to call $dbh->quote on the values. I also corrected the connect call to provide the db handle.

Does your dbconnect() routine set up the RaiseError flag?

After Compline,
Zaxo