in reply to Re: Inserting Apostrophes into SQL
in thread Inserting Apostrophes into SQL

Sure, but it's slower and more complicated than placeholders, and easier to get wrong. Why even suggest it? Is there a case where you can't use placeholders?


Improve your skills with Modern Perl: the free book.

Replies are listed 'Best First'.
Re^3: Inserting Apostrophes into SQL
by jfroebe (Parson) on Nov 18, 2011 at 16:21 UTC

    Actually I did run into a Sybase bug a few years ago where the placeholders resulted in the connection being dropped.

    Jason L. Froebe

    Blog, Tech Blog

      a Sybase bug

      I hope that's fixed, but say no more. I've had to work around my share of Sybase weirdnesses.


      Improve your skills with Modern Perl: the free book.

Re^3: Inserting Apostrophes into SQL
by runrig (Abbot) on Nov 18, 2011 at 20:14 UTC

    Sybase can only have one active statement handle, but will transparently clone a database handle when necessary (unless you set the "I don't want that" flag).

    This means you may run into issues like deadlocks if you're, e.g., inserting in the same loop that you're selecting and fetching in (or other strangeness from having two separate sessions).

    And then I also ran into a bug where the cloned database handle didn't have the same client character set as the original (reported on the DBI mailing list).

    Update: And I just noticed that the OP doesn't mention Sybase anywhere...so this point may be moot anyway...

      Just a small clarification - it's not Sybase that clones the connection handle - it's DBD::Sybase that does this to try to provide the behavior that DBI expects.

      Michael

        Yes, sorry, it's kind of like when the tea kettle boils ... :-)