title: perl DBI placeholder update stmt issue
body: <p>A dbi placeholder has been used in the below sql 'update' queries to avoid sql injections recommended by perl doc. while testing , I noticed the new queries not working properly. I have been looking at stack-overflow and other recourses to identify if anything is missing or not.</p>
  <pre><code>#1
  $sth = $dbh-&gt;do(&quot;UPDATE $dbstore SET Classes='&quot; . $c_classes . &quot;', zzzz='&quot; . $c_zzzz . &quot;', Timestamp='&quot; . $timestamp . &quot;' WHERE Host='&quot; . $h_host . &quot;'&quot;); #old - working as expected
  #$sth = $dbh-&gt;do(&quot;UPDATE $dbstore SET Classes=? , zzzz=? , Timestamp=? WHERE Host=? &quot;, undef, $c_classes, $c_zzzz, $timestamp, $h_host); #new
  
  #2
  $sth = $dbh-&gt;do(&quot;UPDATE $dbstore SET Classes='&quot; . $c_classes . &quot;', zzzz='&quot; . $c_zzzz . &quot;', Timestamp='&quot; . $timestamp . &quot;' WHERE Host='&quot; . $h_host . &quot;'&quot;); #old - working as expected
  #$sth = $dbh-&gt;do(&quot;UPDATE $dbstore SET Classes=? , zzzz=? , Timestamp=? WHERE Host=?&quot;, undef, $c_classes, $c_zzzz, $timestamp, $h_host); #new
  
  #3
  $sth = $dbh-&gt;do(&quot;UPDATE $dbstore SET Warning='&quot; . $st_warning . &quot;' WHERE IDSID='&quot; . $remote_user . &quot;' AND Host='&quot; . $st_host . &quot;'&quot;); #old - working as expected
  #$sth = $dbh-&gt;do(&quot;UPDATE $dbstore SET Warning=? WHERE IDSID=? AND Host=?&quot;, undef, $st_warning, $remote_user, $st_host); #new
  
  #4
  $sth = $dbh-&gt;do(&quot;UPDATE $dbstore SET Warning='&quot; . $st_warning . &quot;' WHERE IDSID='&quot; . $remote_user . &quot;' AND Host='&quot; . $st_host . &quot;'&quot;); #old - working as expected
  #$sth =  $dbh-&gt;do(&quot;UPDATE $dbstore SET Warning=? WHERE IDSID=? AND Host=?&quot;, undef, $st_warning, $remote_user, $st_host); #new
  
  #5
  $sth = $dbh-&gt;do(&quot;UPDATE $dbxxxx SET Nodes='Submitted (&quot; . $timestamp . &quot; by &quot; . $remote_user . &quot;)', Configuration='&quot; . $st_configuration . &quot;' WHERE Host='&quot; . $st_host . &quot;'&quot;); #old - working as expected
  #$sth =  $dbh-&gt;do(&quot;UPDATE $dbxxxx SET Nodes='Submitted (? by ?)', Configuration=? WHERE Host=?&quot;, undef, $timestamp, $remote_user, $st_configuration, $st_host); #new
  
  #6
  $sth = $dbh-&gt;do(&quot;UPDATE $dbxxxx SET Classes='&quot; . $n_classes_update . &quot;' WHERE Host='&quot; . $st_host . &quot;'&quot;);  #old - working as expected
  #$sth =  $dbh-&gt;do(&quot;UPDATE $dbxxxx SET Classes=? WHERE Host=?&quot;, undef, $n_classes_update, $st_host); #new
  
  </code></pre>
  <p>based on my understanding and reading (might be wrong), there is no need to surround the variables with a single/double quote.  Is this a true statement?</p>
  <p>I am most suspicious to query number 5 'Submitted (? by ?)' part.  would having the ? inside single quote cause a problem in this case? if yes, what is the recommended solution?</p>
  <p>Do you by chance see any issue on other queries?</p>
  <p>Thanks</p>