in reply to PostGreSQL Quoting

Use DBI's $dbh->quote or even better, use DBI's placeholders and delegate the job of quoting to the driver.

Replies are listed 'Best First'.
Re^2: PostGreSQL Quoting
by Anonymous Monk on Aug 12, 2004 at 15:28 UTC
    DBI seems to want to connect to the database first. Is there any way to avoid that?

    The reason I need this is because the data is actually being formatted for a report, not a database, but some of the users want to be able to copy-and-paste parts of the report directly into their SQL statements. So, I need to be able to do the quoting without actually connection to a DB.

      Ah ok. Then you'll need to write your own filter. For that just go read the driver's source or the documentation on the Pg web site.
      DBI seems to want to connect to the database first. Is there any way to avoid that?

      Maybe:
      You can try this:

      use DBI; my $drh = DBI->install_driver('Pg') or die; my $dbh = DBI::_new_dbh($drh) or die; print $dbh->quote(q{My "" test ' data \\' for quoting'}), "\n";

      Of course you would be violating all sorts of good programming practices and there is no guarantee that 1. it will work consistantly and 2. it won't segfault, but if it works, it works.