http://www.perlmonks.org?node_id=1047617


in reply to error ..ON DUPLICATE KEY UPDATE value='''

Does not seem like a perl problem. What if you directly execute that insert/update statement in a sql client?
  • Comment on Re: error ..ON DUPLICATE KEY UPDATE value='''

Replies are listed 'Best First'.
Re^2: error ..ON DUPLICATE KEY UPDATE value='''
by mje (Curate) on Aug 02, 2013 at 16:54 UTC

    Have you got DBI's RasieError set? Look for a call to DBI->connect and see if RaiseError => 1. If yes, then your call to do on line 14 just before your Dumper call will die and all your seeing in the Dumper output is from the last successful call and not the one that is failing. If so do:

    eval { $dbh->do($sql); }; if (my $ev = $@) { print Dumper($sq); die $ev; }

    Now you'll only get Dumper output for the failing case.

      RaiseError => 1 is set. the error i get now is this..
      $VAR1 = 'INSERT INTO products_features (product_id, feature_id, value) VALUES (5652151, , \'\') ON DUPLICATE KEY UPDATE value=\'\'';
      looks like the feature_id, value is empty here..What can i do to fix this..
        What values should be inserted? If a blank feature_id is valid, supply a NULL (no quotes). If it is not valid, then skip that record.