First some comments which may not help your immediate problem, but they might...

If your connect fails, the error message will not be in $dbh->errstr, because $dbh will be undef. It WILL be in $DBI::errstr, but even easier would be to use RaiseError in the connect, then you could get rid of all the 'or die ...' clauses in the other DBI statement. You are, for instance, not checking for errors in the fetch.

And you don't need to finish() a statement handle if you're going to fetch all of the rows from it.

AutoCommit is supposed to be on by default, so you shouldn't need to explicitly commit() anything (and I don't see any inserts/deletes/updates that need committing anyway) unless you turn off AutoCommit.

And finally, for some actual help, have you tried NOT using placeholders (just quoting 'guppy' directly in the SQL statement), and does it work? If that doesn't work then maybe the problem is that what's in the database is not what you think it is.

Update: Also, you're using the old-style form of connect (or maybe its just wrong, I forget what the old style was like), which prevents use of attributes like RaiseError during the connect. Look at the docs, and use the correct form ('Oracle' does not belong in that last position, that I'm sure of).


In reply to Re: DBI placeholders by runrig
in thread DBI placeholders by randomblue

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.