in reply to MYSQL $dbh->do

Update - What dws says makes sense. You can use backticks to still be able to use those names as column names (in all other SQL it's double quotes, but they work like single quotes (creating string values) in MySQL). I added them to my example of good placeholder usage. Best is probably to rename your column.

(Untested)

$dbh->do('UPDATE settings SET `key` = ?, des = ?', undef, $key, $des) +or die $dbh->errstr;
  • DBI
  • perlstyle
  • strict

    - Yes, I reinvent wheels.
    - Spam: Visit eurotraQ.
    

  • Replies are listed 'Best First'.
    Re: Re: MYSQL $dbh->do
    by andrew (Acolyte) on Sep 28, 2002 at 20:41 UTC
      You have an error in your SQL syntax near '' at line 1 at admin.cgi line 207. Doesnt work!!!

        Doesnt work!!!

        Oh, right. Stupid DBI again. I forgot to add undef.

        use DBIx::Simple; my $db = DBIx::Simple->connect(...); $db->query('UPDATE ... SET foo=?, bar=?', $foo, $bar);
        There, a lot better :)

        - Yes, I reinvent wheels.
        - Spam: Visit eurotraQ.
        

          were does it say undef, and Im just using

          use DBI;